netconf.git
3 years agoRemove org.opendaylight.restconf.nb.rfc8040.utils.parser.builder 84/90984/4
Robert Varga [Wed, 8 Jul 2020 11:34:06 +0000 (13:34 +0200)]
Remove org.opendaylight.restconf.nb.rfc8040.utils.parser.builder

This package holds only a few constants, which are better
redistributed and kept where they are actually used.

Change-Id: I0fc614072e17df463615b1ea3544a3fae0fd659d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoMigrate stream-related RestconfStreamsConstants 93/90993/2
Robert Varga [Wed, 8 Jul 2020 13:06:05 +0000 (15:06 +0200)]
Migrate stream-related RestconfStreamsConstants

These protocol constants are referenced from a single implementation
place, make sure to move them there.

Change-Id: I273ceb9f4cfed698bd856deb49edd5bef8264310
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoJSONRestconfServiceRfc8040Impl is not AutoCloseable 97/90997/2
Robert Varga [Wed, 8 Jul 2020 13:39:12 +0000 (15:39 +0200)]
JSONRestconfServiceRfc8040Impl is not AutoCloseable

This service has no cleanup, remove useless @PreDestroy method.

Change-Id: I113e0a08e301b9d4eae6b6706d3ce45bb8086002
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix illegalCatch suppressions 75/90975/2
Robert Varga [Wed, 8 Jul 2020 08:40:41 +0000 (10:40 +0200)]
Fix illegalCatch suppressions

We are catching multiple checked exceptions here, but really we are
being lazy. Enumerate caught exceptions and remove suppression.

Change-Id: Ia2d57baf109e19459c662d9e1e3ccd9373b7c08d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove bogus suppression 76/90976/1
Robert Varga [Wed, 8 Jul 2020 08:57:12 +0000 (10:57 +0200)]
Remove bogus suppression

checkstyle:MissingSwitchDefault is no longer relevant here, remove
the suppression.

Change-Id: I7eea2b4b303a14160d461df52efd0f47afa26b5f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoPackage test-jar sources 74/90974/1
Robert Varga [Wed, 8 Jul 2020 08:44:44 +0000 (10:44 +0200)]
Package test-jar sources

Navigating sources tests in downstreams without sources is not
particularly nice. Add tests-sources.jar to all artifacts which
are producting test-jar.

Change-Id: I4b77ca4f9e45638271eec68370db1658f4c20779
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse YangConstants.RFC6020_YANG_MEDIA_TYPE 67/90967/1
Robert Varga [Tue, 7 Jul 2020 17:58:34 +0000 (19:58 +0200)]
Use YangConstants.RFC6020_YANG_MEDIA_TYPE

application/yang media type is an RFC6020 definition, and hence its
common definition lives in YangConstants. Use it from there instead
of brewing our own.

Change-Id: I75d2c2849e8d4e98760445148f1afc9b1f0acb6d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix rawtypes/hiddenField suppressions 57/90957/1
Robert Varga [Tue, 7 Jul 2020 15:48:27 +0000 (17:48 +0200)]
Fix rawtypes/hiddenField suppressions

This is a case of laziness, just specify a wildcard and remove
suppression. While we are in the area, also remove a bogus
hiddenField suppression.

Change-Id: I06d81fc4b03a4d593face187fd92893bab7400f1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove bogus illegalThrows suppressions 56/90956/2
Robert Varga [Tue, 7 Jul 2020 15:40:42 +0000 (17:40 +0200)]
Remove bogus illegalThrows suppressions

This code should never have passed review, fix it up. While we are
at it, fixup throws declarations.

Change-Id: I2ecc832260b711571fea2d4cdbe7d04b075bb293
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove unused SuppressWarnings 55/90955/1
Robert Varga [Tue, 7 Jul 2020 15:32:48 +0000 (17:32 +0200)]
Remove unused SuppressWarnings

checkstyle:illegalCatch is no longer applicable in a number of
places, remove suppressions.

Change-Id: I7fcd339ea8aafaef7ba4db1eaa6f3c6b8960582c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove unused SuppressWarnings 54/90954/1
Robert Varga [Tue, 7 Jul 2020 15:31:03 +0000 (17:31 +0200)]
Remove unused SuppressWarnings

checkstyle:finalClass is no longer applicable here, remove it.

Change-Id: I49f7311d87a668de215a7a884195deedfc8f3aee
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix raw type warnings in rfc8040 northbound 53/90953/1
Robert Varga [Tue, 7 Jul 2020 15:27:32 +0000 (17:27 +0200)]
Fix raw type warnings in rfc8040 northbound

There are quite a few warnings around use of raw types, fix them up.

Change-Id: I3a5cffd8148086470f9a1dfbdf837228d56d6e7f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove SchemaContextRef 51/90951/2
Robert Varga [Tue, 7 Jul 2020 13:39:52 +0000 (15:39 +0200)]
Remove SchemaContextRef

Carrying a soft reference is completely superfluous -- it does not
guarantee availability and realistically this is just a brain-dead
wrapper for a local reference. Remove the class along with all
references to it.

Change-Id: I2e6fc3f9720f200e12443e07c490f8d79d04351b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRemove useless SchemaContextRef wrappers 50/90950/1
Robert Varga [Tue, 7 Jul 2020 13:10:30 +0000 (15:10 +0200)]
Remove useless SchemaContextRef wrappers

For whatever legacy reasons we are wrapping references to
EffectiveModelContext into soft reference holder, only to unwrap
them in the same method. Remove this clutter.

Change-Id: I2211639c2663bfc4f2f4f9e5898be304c6acad17
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCleanup RestconfValidationTest 49/90949/1
Robert Varga [Tue, 7 Jul 2020 12:54:16 +0000 (14:54 +0200)]
Cleanup RestconfValidationTest

The tests here could use proper asserts, clean them up.

Change-Id: I75aceba1942a857fe95c9604db4f8e485158adf4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoEliminate org.opendaylight.restconf.nb.rfc8040.utils.validations 48/90948/1
Robert Varga [Tue, 7 Jul 2020 12:43:05 +0000 (14:43 +0200)]
Eliminate org.opendaylight.restconf.nb.rfc8040.utils.validations

This package is self-serving detail of identifiers parsing. Fold
it into ParserIdentifier, which is its only production user.

Change-Id: Ie07f7097e30374882f694f1d88cb49e15b0199ad
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoBind operation prefix to correct namespace 10/79610/20
Robert Varga [Thu, 17 Jan 2019 12:05:32 +0000 (13:05 +0100)]
Bind operation prefix to correct namespace

During NetconfUtil.writeNormalizedNode() we failed
to set a prefix for the netconf operation leading to a warning.
Make sure we set the correct NamespaceContext and fallback
to setPrefix() in case the underlying DOM writer does not
support setNamespaceContext().

JIRA: NETCONF-603
Change-Id: Icff5e045c4e901bb53990177d448a1ea43952c62
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Signed-off-by: Tomas Cere <tomas.cere@pantheon.tech>
3 years agoRevert "Added Validation for invalid file in schemas-directory." 42/90742/2
JakubToth [Wed, 1 Jul 2020 22:32:27 +0000 (22:32 +0000)]
Revert "Added Validation for invalid file in schemas-directory."

This reverts commit 4c21689aba5d009c36765dd614643a6c8f89915c.

Reason for revert: readLine() is not returning null for example for binary files etc

Change-Id: I9b3e70b8e95a04dc7ae95b9ff60be2a664b636c8
Signed-off-by: JakubToth <jakubt4@gmail.com>
3 years agoRevert "Fix nested YANG 1.1 Action invocation" 44/90944/1
Robert Varga [Tue, 7 Jul 2020 08:35:18 +0000 (10:35 +0200)]
Revert "Fix nested YANG 1.1 Action invocation"

This reverts commit 8b9206c7b36b7f7ebfadf23e1be00d43a0bd9573, as
it breaks CSIT.

JIRA: NETCONF-702
Change-Id: I6f65c587f5e9d04e67dcdcaeda12688d206524b5
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoAdded Validation for invalid file in schemas-directory. 34/90834/1
Nikhil Soni [Wed, 1 Jul 2020 05:39:45 +0000 (11:09 +0530)]
Added Validation for invalid file in schemas-directory.

If any invalid (not readable as text) file is present in Schemas-directory then those files should be validated in existing validate method.

JIRA: NETCONF-707
Signed-off-by: Nikhil Soni <nsoni@luminanetworks.com>
Change-Id: I41191748569fcbfd87141c4a4cfe2e8328137911

3 years agoAdd method to build SSL Handler for selected keys only 38/90538/7
Oleksii Mozghovyi [Sun, 21 Jun 2020 02:39:13 +0000 (05:39 +0300)]
Add method to build SSL Handler for selected keys only

JIRA: NETCONF-5
Signed-off-by: Oleksii Mozghovyi <oleksii.mozghovyi@pantheon.tech>
Change-Id: I780949db6c425ac0fd682838e87f3893065434e6

3 years agoMinor refactor in Call-Home 37/90537/6
Oleksii Mozghovyi [Sun, 21 Jun 2020 01:27:10 +0000 (04:27 +0300)]
Minor refactor in Call-Home

JIRA: NETCONF-5
Signed-off-by: Oleksii Mozghovyi <oleksii.mozghovyi@pantheon.tech>
Change-Id: I6d79e7cdfe864f416aeb3466047e7d0f6be23f7e

3 years agoFix processing of hexadecimal, octal values 86/90486/3
Ilya Igushev [Thu, 25 Jun 2020 06:46:02 +0000 (06:46 +0000)]
Fix processing of hexadecimal, octal values

JSON doesn't support hexadecimal, octal numbers, unlike YANG.
Therefore when YANG type definition has hexadecimal,or octal
default value of YANG leaf used string JSON format.

Change-Id: I95b1756c0092991a591164b3432f7d93214dfe1d
JIRA: NETCONF-703
Signed-off-by: illia.ihushev <illia.ihushev@pantheon.tech>
3 years agoFix up feature packaging 94/90594/2
Robert Varga [Tue, 23 Jun 2020 06:28:16 +0000 (08:28 +0200)]
Fix up feature packaging

We have a number of bundles packaged multiple times, fix that up
by providing proper references.

Change-Id: I0488fefbeaab3760eca7daf93ddd9d335713f285
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoUse range when importing MRI features 81/90581/1
Robert Varga [Mon, 22 Jun 2020 19:24:33 +0000 (21:24 +0200)]
Use range when importing MRI features

Not using ranges for features locks us down unfortunately, make
sure to use them for MRI projects.

Change-Id: Ia31779d7fbe28334ed7f1856f183a5d381ce5f33
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoCatch exception when transformer fails to parse 37/90237/5
Jamo Luhrsen [Thu, 4 Jun 2020 00:17:26 +0000 (17:17 -0700)]
Catch exception when transformer fails to parse

There is a deadlock if a transformer fails to parse a reply
and uses that to invoke the rpc. The future gets stuck and
never completes. This catches the case of a bad toRpcResult
from the transformer and marks the future with a
DefaultDOMRpcException

JIRA: NETCONF-695
Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: Ied3e0ac4b08e128c41f54e01df91543e4d3fc3a4

3 years agoIntegrate controller-2.0.2 06/90406/1
Robert Varga [Thu, 11 Jun 2020 21:43:52 +0000 (23:43 +0200)]
Integrate controller-2.0.2

This bumps versions to the following:
- odlparent-7.0.3
- yangtools-5.0.3
- mdsal-6.0.2
- controller-2.0.2

Change-Id: I7255d610b092259c64fe9dfe24244a68a7195e14
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoFix nested YANG 1.1 Action invocation 25/90225/5
ajay_dp001 [Wed, 3 Jun 2020 04:27:28 +0000 (09:57 +0530)]
Fix nested YANG 1.1 Action invocation

Invocation of action fails if the action is defined as an augmentation.
As it turns out the logic can be very much simplified by just cutting
the last item from YangInstanceIdentifier, as that points to the parent
(and hence context) of the action.

JIRA: NETCONF-696
Change-Id: I7b03b2b1ebdd7bffbfab5291552c430700ff2850
Signed-off-by: ajay_dp001 <ajay.deep.singh@est.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
3 years agoRESTCONF RFC8040 Notifications support for application/yang-data+xml 04/89704/4
Lukas Baca [Tue, 12 May 2020 14:43:31 +0000 (16:43 +0200)]
RESTCONF RFC8040 Notifications support for application/yang-data+xml

In "https://tools.ietf.org/html/rfc8040" have GET,PUT,POST,PATCH
possibility to use Accept: application/yang-data+xml

JIRA: NETCONF-684
Change-Id: I25c165b7c2672f7ad7bacbd95c4c5a9634b69122
Signed-off-by: Lukas Baca <lbaca@luminanetworks.com>
3 years agoCorrectly extract mountpoint name from URI 94/89994/3
Richard Kosegi [Wed, 27 May 2020 03:53:21 +0000 (05:53 +0200)]
Correctly extract mountpoint name from URI

Last path component of mountpoint's YII is not necessarily
always "node". Split URI on '=' instead.

JIRA: NETCONF-693
Change-Id: Ib4a2e9bd71abaee327b4a971cc22698027a73ce7
Signed-off-by: Richard Kosegi <richard.kosegi@gmail.com>
4 years agoHandle multiple rpc-error in the same rpc-reply 59/89859/6
Jamo Luhrsen [Thu, 14 May 2020 21:12:58 +0000 (14:12 -0700)]
Handle multiple rpc-error in the same rpc-reply

When multiple rpc-error is seen in a reply it was not being
caught as an error and eventually falling through the cracks
to show up as an IllegalArgumentException.

This also adds a hack/workaround for passing back all the
error messages found from each of the multiple rpc-error(s)

Also, instead of this case not being recognized as an
rpc-error, it was causing the request to wait until
the device request timeout to expire at which point it's
noted as a full RPC failure and the device is disconnected
and reconnected. Now it is recognized as an error and the
response is handled as soon as it's received and there is
no connection flap.

JIRA: NETCONF-666
Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I71829e04d7642cfd4d1c54596f1fc7670db0d292

4 years agoEnsure RPC input in invocation is not null 32/90232/3
Robert Varga [Wed, 3 Jun 2020 13:05:55 +0000 (15:05 +0200)]
Ensure RPC input in invocation is not null

DOMRpcService contract has changed to require input to be non-null,
hence we need to build an empty container when user does not supply
one.

JIRA: NETCONF-697
Change-Id: I5355a1e7b4c958d9beefc6dc41de83a1c9dc9763
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoTrim awaitility specification 55/90155/1
Robert Varga [Sun, 31 May 2020 09:11:41 +0000 (11:11 +0200)]
Trim awaitility specification

org.awaitility is declared with scope=test, there's no need to
repeat it.

Change-Id: Ic65b06e725f333dec5f89d0c1c1a49bde377898c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoIntegrate controller-2.0.1 54/90154/1
Robert Varga [Sun, 31 May 2020 08:09:07 +0000 (10:09 +0200)]
Integrate controller-2.0.1

This bumps versions to the following:
- odlparent-7.0.2
- yangtools-5.0.2
- mdsal-6.0.1
- controller-2.0.1

Change-Id: Id0fae35520d7b9562882223fb2fce38f0eba5372
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoCleanup a few uses of getDataChildByName() 98/89998/2
Robert Varga [Wed, 27 May 2020 11:36:27 +0000 (13:36 +0200)]
Cleanup a few uses of getDataChildByName()

This method has been deprecated for quite some time and our use of
it leads nulls floating in places where they should not. Fix a few
of the use sites.

Change-Id: Idcc73caf374e54d9f39d7429acd6f18b15fc4ed0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoClean up some log messages and descriptions 08/90008/2
Jamo Luhrsen [Wed, 27 May 2020 17:21:22 +0000 (10:21 -0700)]
Clean up some log messages and descriptions

Just some minor changes for readability when digging through
log files. yang desrciption was changed to match log message
as they were duplicates of each other.

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I51a6deee824ef95b3c7721c2e555f247d95de781

4 years agoUse censor attribute for CLI commands 15/90015/2
Venkatrangan Govindarajan [Wed, 27 May 2020 20:57:58 +0000 (02:27 +0530)]
Use censor attribute for CLI commands

This patch will help avoid usernames/passwords for device
access to be saved in karafhistory

JIRA: NETCONF-694
Change-Id: If2ac255b0ec9bbc32e3aec7d0247497cc927a3e1
Signed-off-by: Venkatrangan Govindarajan <vgovindarajan@luminanetworks.com>
4 years agoUse RFC7895/RFC8525 for schema monitoring 97/89597/7
Vladyslav Marchenko [Tue, 5 May 2020 07:25:22 +0000 (10:25 +0300)]
Use RFC7895/RFC8525 for schema monitoring

Added support of RFC7895 that obsoletes RFC7895 (new "yang-library" container). Added a "yang-library-update" notification as a replacement for the deprecated "yang-library-change" notification.

JIRA: NETCONF-656
Signed-off-by: Vladyslav Marchenko <vladyslav.marchenko@pantheon.tech>
Change-Id: Iad13c504c621d245943ade20bd5581efc5292db6

4 years agoCleanup use of deprecated constructs 95/89995/3
Robert Varga [Wed, 27 May 2020 08:26:30 +0000 (10:26 +0200)]
Cleanup use of deprecated constructs

Continue cleaning up of deprecated warnings, so that we get a stable
baseline before embarking on major work items in Aluminium.

Change-Id: Ib7d0e7a072054b04c21217ad9ce9106bedb6ae70
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoCleanup use of deprecated constructs 53/89953/2
Robert Varga [Tue, 26 May 2020 10:53:31 +0000 (12:53 +0200)]
Cleanup use of deprecated constructs

A number of tests are reporting use of deprecated methods, this patch
cleans some of them up.

Change-Id: Ibbaa87be60a2b9261e473df040c3738cae8181d9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoClean up SchemalessRpcStructureTransformerTest 51/89951/2
Robert Varga [Tue, 26 May 2020 10:23:18 +0000 (12:23 +0200)]
Clean up SchemalessRpcStructureTransformerTest

Do not use ExpectedException, pinpointing exact failure mode.

Change-Id: I2bc6c1c1557925c248c93ff317c2a1a45ae6af4f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoClean up NetconfNodeActorTest 50/89950/2
Robert Varga [Tue, 26 May 2020 10:16:35 +0000 (12:16 +0200)]
Clean up NetconfNodeActorTest

Do not use ExpectedException and clean up checkstyle suppressions.

Change-Id: If91b404f900edbc2035831c04cadb70841f7a60f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoCleanup RFC8040 tests 48/89948/2
Robert Varga [Tue, 26 May 2020 09:01:16 +0000 (11:01 +0200)]
Cleanup RFC8040 tests

Do not use ExpectedException or try/catch blocks, as we have
assertThrows() readily available. Also make sure we reuse
EffectiveModelContext.

Change-Id: I6c43b23ef90f914218c707c59c0a434945a0e4a1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoCorrect POST Location with lists 20/89420/3
wsx25289 [Sun, 26 Apr 2020 07:17:28 +0000 (03:17 -0400)]
Correct POST Location with lists

When a document is POSTed to a map, we end up returning the wrong
location. Update location with the first entry in the map to produce
the correct result.

JIRA: NETCONF-676
Change-Id: I0a8ab5a8147b98847a1fbb1b66cc7bb7b7722872
Signed-off-by: Wsx25289 <10200860@zte.com.cn>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
(cherry picked from commit d2e6a73b08ae4a3d6a7975895404ca3de07d2ee2)

4 years agoClean up PostDataTransactionUtil 86/89886/2
Robert Varga [Fri, 22 May 2020 09:23:28 +0000 (11:23 +0200)]
Clean up PostDataTransactionUtil

These methods are horrible in their if/else use. Clean them up a bit
so as to make clearer what is going on.

Change-Id: I8b6a619c3c9af548af42985a79fdf7d9c99a9fa0
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAllow SshClient to be customized via NetconfClientConfiguration 84/89884/2
Tibor Král [Wed, 20 May 2020 13:16:40 +0000 (15:16 +0200)]
Allow SshClient to be customized via NetconfClientConfiguration

There are a number of options we want to have configurable on
a per-client (rather than per-dispatcher) basis. These options
are related to how SSH operates and hence we do not want to
duplicate them but rather allow an explicit pre-built client
instance to be passed down.

JIRA: NETCONF-641
Change-Id: I4c39a8ec909edae0ca15e5af4efd7ca690d64fbf
Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoGet notification streams error. 73/88873/5
wsx25289 [Fri, 3 Apr 2020 09:14:58 +0000 (05:14 -0400)]
Get notification streams error.

Get streams should have correct response.

JIRA: NETCONF-663

Change-Id: I5cd5342653795b5531ca66cf6d839f9568c59474
Signed-off-by: Wsx25289 <10200860@zte.com.cn>
4 years agoNETCONF southbound requires notifications.yang model to be present on the device 43/88643/9
vladyslav.marchenko [Mon, 23 Mar 2020 15:05:23 +0000 (17:05 +0200)]
NETCONF southbound requires notifications.yang model to be present on the device

There is no standardized YANG model for NETCONF notifications simply because RFC5277 predates YANG and has not been updated. The presence of the notification capability is enough for notifications to work – the SchemaContext assembly code supplies the model internally based on the capability.

JIRA: NETCONF-338
Signed-off-by: vladyslav.marchenko <Vladyslav.Marchenko@pantheon.tech>
Change-Id: Iaec5eab02f8d43f752d90a3fd0ecbc0a57e9e75f

4 years agoUpdate swagger generator to OpenAPI 3.0 30/88830/23
illia.ihushev [Wed, 1 Apr 2020 14:57:37 +0000 (17:57 +0300)]
Update swagger generator to OpenAPI 3.0

This commit update both generation of the API documentation JSON, along
with UI based on the JSON.

Issues:

 - the request bodies generated with all the choice case nodes present
 - invalid request bodies for the POST requests on list/container, when
   Content-Type is application/xml

JIRA: NETCONF-687
Signed-off-by: illia.ihushev <illia.ihushev@pantheon.tech>
Change-Id: I58002878d5d5a46507be021c4c1783004ea0409a

4 years agoAdjust window on read 56/89756/1
Robert Varga [Thu, 14 May 2020 21:09:03 +0000 (23:09 +0200)]
Adjust window on read

As a side-effect of us bypassing the read function, we no longer
update the window occupancy, which leads to the other side stopping
sending data. Make sure we adjust the window after passing the data
down the pipeline.

JIRA: NETCONF-686
Change-Id: I66c4873d901f7b88aabd97a1c599be64397b16c7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFurther rework of base schemas 34/89734/3
Robert Varga [Mon, 11 May 2020 11:32:07 +0000 (13:32 +0200)]
Further rework of base schemas

As it turns out we cannot really instantiate base schemas without
a proper parser, as would be required in static contexts. Let us
turn them into a proper component, so that it can be injected at
runtime.

JIRA: NETCONF-683
Change-Id: I65b90f3042d9354443dfa4052413d531626f4376
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse ranges for controller features 01/89701/1
Robert Varga [Tue, 12 May 2020 12:36:25 +0000 (14:36 +0200)]
Use ranges for controller features

We really want to allow smooth upgrades wherever possible, hence
we should specify ranges for controller's features.

Change-Id: Ia2f9b8b4d1716abe402e230bc44bdbbf511eea6f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReport HTTP status 409 on DATA_MISSING error 83/89583/8
Lukas Baca [Mon, 4 May 2020 09:47:23 +0000 (11:47 +0200)]
Report HTTP status 409 on DATA_MISSING error

Change the HTTP status reported on DATA_MISSING conditions to 409,
to match RESTCONF specification. Previous behavior of using 404
can be selected globally via a system property.

JIRA: NETCONF-682
Change-Id: Ibb10b7f9b8d49cd85edaf4fee8986a14cc9f3506
Signed-off-by: Lukas Baca <lbaca@luminanetworks.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBind to PasswordCredentialAuth 90/89390/8
Robert Varga [Sun, 26 Apr 2020 01:52:08 +0000 (03:52 +0200)]
Bind to PasswordCredentialAuth

Rather than using a non-safe wild generic, bind to the specialization
for passwords, addressing a long-standing FIXME.

Change-Id: I0b14c92c2801dfdc833a925c8b907e4802e0506e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRe-integrate ssh client 81/84781/31
Robert Varga [Fri, 27 Sep 2019 11:19:22 +0000 (13:19 +0200)]
Re-integrate ssh client

This re-wraps SshClient in a different way, allowing us to shuffle
information directly into netty.

JIRA: NETCONF-674
Change-Id: Iba0abf81fda90b45403b507c7a00ec9fad48c5a1
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
Signed-off-by: Vladyslav Marchenko <vladyslav.marchenko@pantheon.tech>
4 years agoAnnotate CredentialServiceAuthProvider for injection 02/89602/1
Robert Varga [Tue, 5 May 2020 09:59:36 +0000 (11:59 +0200)]
Annotate CredentialServiceAuthProvider for injection

This is a component which should be a singleton and should receive
a CredentialAuth service injected. Annotate it as such.

Change-Id: I2060728e2d364ba2b46960b62b37d3762cefa9cd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUpgrade mina-sshd to 2.4.0 55/89455/6
Robert Varga [Mon, 27 Apr 2020 18:45:25 +0000 (20:45 +0200)]
Upgrade mina-sshd to 2.4.0

https://github.com/apache/mina-sshd/blob/master/docs/changes/2.4.0.md

Change-Id: I26a5cdc8eb699c16c86352156b55ffa331762c5e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoShade mina-sshd 45/89445/15
Robert Varga [Mon, 27 Apr 2020 12:25:30 +0000 (14:25 +0200)]
Shade mina-sshd

Karaf is using a down-reved version of sshd, which unfortunately
has interplay with us providing a newer version. Shade apache-sshd
so that we can ship whatever version we want without worries about
overlap.

JIRA: NETCONF-677
Change-Id: I0b509b6482f2af207bc07328a9cdb720ebbf506f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUpdate MRI projects for Aluminium 12/88912/46
Robert Varga [Mon, 6 Apr 2020 09:46:58 +0000 (11:46 +0200)]
Update MRI projects for Aluminium

This bumps versions to the following:
- odlparent-7.0.1
- yangtools-5.0.1
- mdsal-6.0.0
- controller-2.0.0

Change-Id: Ie2c08ff858d66a57e79d118d8b7e571209a89c5a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix factored out operatations context 29/89529/1
Robert Varga [Thu, 30 Apr 2020 11:11:31 +0000 (13:11 +0200)]
Fix factored out operatations context

SimpleSchemaContext is cross-referencing module, which means we need
to hide any transitive dependencies, i.e. pretend the modules originating
modules are empty.

Change-Id: I9792acf81588f5ea33952dad470484b9cf7d0e8b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate CallHomeSessionContext.nettyChannel 25/89525/2
Robert Varga [Wed, 29 Apr 2020 17:54:00 +0000 (19:54 +0200)]
Eliminate CallHomeSessionContext.nettyChannel

Holding a temporary field only for it to be picked up by a callback
does not make sense. Eliminate it and allocate it much later in the
game.

Change-Id: I34b7dbc7244ef1627797c19d5b0d1c046ea46be3
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoDo not require NetconfSessionImpl 17/89517/1
Robert Varga [Wed, 29 Apr 2020 12:14:18 +0000 (14:14 +0200)]
Do not require NetconfSessionImpl

Drop the instanceOf checks down to simple null checks, so that
we are not tied to a particular implementation.

JIRA: NETCONF-674
Change-Id: I3b9d123d6034a96e6b2d09d68d3cf5bae117cc78
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFactor out common operations schema/data construction 94/89394/10
Robert Varga [Sun, 26 Apr 2020 11:47:02 +0000 (13:47 +0200)]
Factor out common operations schema/data construction

These bits of code are just copy&pasted between the two
implementations, move them to common code and refactor them to
make them simpler.

Change-Id: Ica72ee1623c6dc2734d2fd9456be96e8a514fccf
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFactor out SchemaResourceManager 71/89371/11
Robert Varga [Sat, 25 Apr 2020 09:46:44 +0000 (11:46 +0200)]
Factor out SchemaResourceManager

Management of schema cache on the filesystem is copy&pasted in two
places, which creates a compatibility problem. Furthermore current
code relies on static wiring, which is going to be non-workable
very soon.

Refactor AbstractTopology to split out schema management into a
separate component within sal-netconf-connector, which is injected
into both AbstractTopology subclasses and clustered topology.

JIRA: NETCONF-672
Change-Id: If1284a08f9525a3396f2d39e2a4399366edee7ae
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoSeparate out single-node netconf-topology 72/89372/4
Robert Varga [Sat, 25 Apr 2020 13:37:29 +0000 (15:37 +0200)]
Separate out single-node netconf-topology

netconf-topology-config is rather misnamed, with the actual
implementation being present in netconf-topology itself.

In order separate out schema management in a modular fashion
we need to split move out the classes.

JIRA: NETCONF-672
Change-Id: I7bdcf685267711bcb7540acdc5a98aa715e8b0c4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd sources to shaded-exificient 44/89444/4
Robert Varga [Mon, 27 Apr 2020 13:34:55 +0000 (15:34 +0200)]
Add sources to shaded-exificient

Our shaded-exificient does not contain a source attachment, fix
that.

Change-Id: I5743c31266817dbaa71e46af30e5ab24c11b232d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoExclude xmlpull's MANIFEST.MF 43/89443/4
Robert Varga [Mon, 27 Apr 2020 13:30:12 +0000 (15:30 +0200)]
Exclude xmlpull's MANIFEST.MF

We do not need this manifest, just ditch it to suppress a warning.

Change-Id: I6837ca40e91db65b22b2b6358d8bb86022b4d2fb
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove unneeded sshd dependency 46/89446/3
Robert Varga [Mon, 27 Apr 2020 13:39:39 +0000 (15:39 +0200)]
Remove unneeded sshd dependency

odl-netconf-util does not need sshd, move it to netconf-netty-util,
where it really belongs.

Change-Id: I254daf9608820af5965724a2eb1873343303b54c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoNETCONF-656 Use RFC7895/RFC8525 for schema monitoring 07/89307/3
Vladyslav Marchenko [Thu, 23 Apr 2020 09:39:03 +0000 (12:39 +0300)]
NETCONF-656 Use RFC7895/RFC8525 for schema monitoring

Signed-off-by: Vladyslav Marchenko <vladyslav.marchenko@pantheon.tech>
Change-Id: I4f5f856206bb684a3b346bff2cb8939b91b85cad

4 years agoAdd eddsa dependency to netconf-testtool 99/89399/3
Robert Varga [Sun, 26 Apr 2020 14:51:36 +0000 (16:51 +0200)]
Add eddsa dependency to netconf-testtool

This enables it to process ed25519 keys, which is useful.
Also remove superfluous xmlunit version specification.

Change-Id: Ib8803c2684e14840269fbec9f71b89b0d4b460a8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate useless allocation 73/89373/2
Robert Varga [Sat, 25 Apr 2020 14:03:33 +0000 (16:03 +0200)]
Eliminate useless allocation

For some reason we are going through an indirection instead of
getting the modules directly. Fix that.

Change-Id: Id49d5db3501dae6cb5368599f4f8c7855115a962
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove unneeded blueprint-core dependency 77/89377/1
Robert Varga [Sat, 25 Apr 2020 19:11:17 +0000 (21:11 +0200)]
Remove unneeded blueprint-core dependency

Not sure why this was ever needed, remote it.

Change-Id: Ife5c4ccd5e1bb64a3717e7aa838a83a9d3395c0f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMove eddsa dependency 76/89376/1
Robert Varga [Sat, 25 Apr 2020 19:02:07 +0000 (21:02 +0200)]
Move eddsa dependency

We actually do not need to have it in netconf-netty-util, it
is enough to have it as a test dependency near SSHTest.

Change-Id: Id4b56883ff155c102874e751a8cefb9b5c72325f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoCreate netconf.topology.spi 32/89332/1
Robert Varga [Fri, 24 Apr 2020 07:24:30 +0000 (09:24 +0200)]
Create netconf.topology.spi

Move netconf.topology.AbstractNetconfTopology to .spi, along
with the renamed SchemaRepositoryProviderImpl. This allows us
to eliminate the duplicate SchemaRepositoryProviderImpl.

JIRA: NETCONF-671
Change-Id: I2746aa7738f6aacd99bb4a1da7b5e09e95a366b8
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoEliminate TopologyUtil 31/89331/1
Robert Varga [Fri, 24 Apr 2020 06:52:05 +0000 (08:52 +0200)]
Eliminate TopologyUtil

This class has a single user, which will benefit from inlining.

JIRA: NETCONF-671
Change-Id: I1fc00f2c373b630760089e67aadee02a5af59569
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoPull eddsa into netconf-netty-util 95/89295/1
Robert Varga [Wed, 22 Apr 2020 23:15:03 +0000 (01:15 +0200)]
Pull eddsa into netconf-netty-util

Pulling in this dependency allows SSHTest to pass with ed25519
keys being configured.

Change-Id: I1084e207503ab5e6f4ed50405fecabb96a018841
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMinimize DataNormalizer footprint 70/89270/1
Robert Varga [Wed, 22 Apr 2020 16:20:45 +0000 (18:20 +0200)]
Minimize DataNormalizer footprint

Our import from the controller has some things which we do not
need. Clean them out, significantly reducing complexity.

Change-Id: Idb33749fa877c6575bae8fcf01ccbc702582ccb4
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate away from sal-common-impl 15/88915/3
Robert Varga [Mon, 6 Apr 2020 12:23:06 +0000 (14:23 +0200)]
Migrate away from sal-common-impl

DataNormalizer and related classes are deprecated for removal,
and are used only by are deprecated RESTCONF implementation.
Rehost the three required classes as a private detail.

Change-Id: Id5539948881d503fbe5e223c41cfa7a9a2284109
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoReuse SchemaContext.NAME for base NETCONF data qname 88/89188/2
Robert Varga [Tue, 21 Apr 2020 08:46:50 +0000 (10:46 +0200)]
Reuse SchemaContext.NAME for base NETCONF data qname

This QName is a well-known constant available from SchemaContext,
do not use scattered definition.

Change-Id: I68b88d216e35b2583828a73a5d4a2ebe2f092893
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd plain PATCH capability to RFC8040 server 14/88214/15
Allan Clarke [Mon, 2 Mar 2020 20:29:11 +0000 (14:29 -0600)]
Add plain PATCH capability to RFC8040 server

Rename constant PATCH to YANG_PATCH - there are now two patch types
Add unit tests for PlainPatchDataTransactionUtil
Update unit tests for RestconfDataService

JIRA: NETCONF-657
Change-Id: I0356e7d4947f89ed603d71e722d845e709ea4e03
Signed-off-by: Allan Clarke <aclarke@pobox.com>
Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd a dedicated AuthenticationFailedException 30/89130/2
Robert Varga [Sun, 19 Apr 2020 11:18:47 +0000 (13:18 +0200)]
Add a dedicated AuthenticationFailedException

When we have a failure to authenticate, we want the client to be
able to discern this state.

Add a dedicated exception and report it instead of straight
exception from SSH (which may be anything) or a generic ISE.

JIRA: NETCONF-665
Change-Id: I1f113d5aaff6bf4482d9725adaa06b5d2479304c
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix defensive subscriber removal 41/89041/2
wsx25289 [Thu, 9 Apr 2020 07:29:44 +0000 (03:29 -0400)]
Fix defensive subscriber removal

Attempting to modify the collection while iterating over it
results in ConcurrentModificationException. Use an explicit
iterator and Iterator.remove() to prevent it.

JIRA: NETCONF-664
Change-Id: I6206dfdd896307f83420cfb3201d1125adbf9a07
Signed-off-by: Wsx25289 <10200860@zte.com.cn>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFiles should not be executable 31/89131/1
Robert Varga [Sun, 19 Apr 2020 13:32:33 +0000 (15:32 +0200)]
Files should not be executable

We do not want these to be executable, drop those permissions.

Change-Id: I1ba2d56cc195dce85809ea48a5d231ddcd3b351a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoDo not consider query depth in initial namespace 77/87377/7
wsx25289 [Mon, 3 Feb 2020 10:57:49 +0000 (05:57 -0500)]
Do not consider query depth in initial namespace

Initial namespace is independent of the maximum depth requested
by the user. This is a mixup with path depth introduced in the
previous fix for NETCONF-497.

Change-Id: I90fdcc60b2be0891082333490d77d681ecc4fc4a
Signed-off-by: Wsx25289 <10200860@zte.com.cn>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoFix default value check 36/70636/3
Magic_J [Mon, 9 Apr 2018 06:17:44 +0000 (14:17 +0800)]
Fix default value check

TypeDefinition.getDefaultValue() is returning an optional, which
results in it always being non-null. Fix the check for nullness
and make sure we use the correct value.

Change-Id: Id5aba6cd215d4e19f8b583a81e5599daa9bbe12d
Signed-off-by: Magic_J <panda.magic.j@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoRemove references to sal-common-impl 14/88914/2
Robert Varga [Mon, 6 Apr 2020 11:25:15 +0000 (13:25 +0200)]
Remove references to sal-common-impl

We do not need anything from sal-common-impl, remove references
to it.

Change-Id: If99a707c8d3be10d3a491aff1d1564f14727926a
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoMigrate Compendium reference 11/88911/1
Robert Varga [Mon, 6 Apr 2020 10:29:30 +0000 (12:29 +0200)]
Migrate Compendium reference

We are using OSGi R6, migrate the artifact reference.

Change-Id: I1b669bdc5eaa2c235945acf29db2b27e2ed1d62b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUse Magnesium controller 77/88677/2
Robert Varga [Wed, 25 Mar 2020 21:44:55 +0000 (22:44 +0100)]
Use Magnesium controller

As part of controller transition to being MRI, downgrade the version
used to Magnesium release. This will be bumped to Aluminium proper
during the MRI window.

Change-Id: Ib7d7d33fabb7731795de9ba8b59fab4064ce085e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoUpdate coretutorials links 62/88762/1
Jamo Luhrsen [Sat, 28 Mar 2020 00:54:33 +0000 (17:54 -0700)]
Update coretutorials links

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I473a0a72f027a7d3265faefb83091aec6beaf989

4 years agoMaster branch is now Aluminium 18/88718/2
Thanh Ha [Thu, 26 Mar 2020 18:45:03 +0000 (14:45 -0400)]
Master branch is now Aluminium

Signed-off-by: Thanh Ha <zxiiro@gmail.com>
Change-Id: I709dba98975ad76a1bd83e923fc08d32027c0aa8

4 years agoFix broken link to coretutorials:ncmount 62/88562/1
Jamo Luhrsen [Fri, 20 Mar 2020 23:17:17 +0000 (16:17 -0700)]
Fix broken link to coretutorials:ncmount

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I80378fede387084e0b31c2b31928313e6f971f02

4 years agoNETCONF-125 connection timeout and between timeout are fixed 35/87535/2
Sarguna Dharani [Mon, 10 Feb 2020 11:55:44 +0000 (17:25 +0530)]
NETCONF-125 connection timeout and between timeout are fixed

Signed-off-by: Sarguna Dharani <sarguna.dharani@verizon.com>
Change-Id: I56275dfa10dcfd4ed1a30fbb6c34169e301269db

4 years agoReject multiple sessions with the same host key 45/87545/7
Manoj Chokka [Mon, 10 Feb 2020 18:15:34 +0000 (23:45 +0530)]
Reject multiple sessions with the same host key

SSH host key is supposed to be unique among devices. If there is an
attempt to establish a session with the same key, terminate the new
session.

Since that rules out the possibility of multiple remotes for a key,
refactor the code to use a ConcurrentMap instead of a Multimap --
removing the need for any locking.

As we really want to use CallHomeProtocolSessionContext in logging,
make it implement a toString() method and clean it up a bit.

JIRA: NETCONF-653
Change-Id: I2d78b9aa34ee4b16d0c6d2ed2ac172942c575851
Signed-off-by: Manoj Chokka <manoj.chokka@verizon.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoAdd a few restconf additions 83/88083/4
Jamo Luhrsen [Thu, 27 Feb 2020 01:55:28 +0000 (17:55 -0800)]
Add a few restconf additions

- pointing out differences in URL between bierman02 and rfc8040
- added a section about using yang-patch

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: Icd0f39034cbdd898dcd8e31ec70b04fc094362e6

4 years agoDo not attempt to parse empty RPC/action reply 11/86811/6
Sanjana B [Mon, 10 Feb 2020 11:26:59 +0000 (16:56 +0530)]
Do not attempt to parse empty RPC/action reply

An RPC or action can legally result in an empty reply,
even if it has some optional content in its schema.

Detect </ok> reply and do not attempt to parse it as
YANG data.

JIRA: NETCONF-568
JIRA: NETCONF-644
Change-Id: I1f0b5c349f418824b9b0b3e1f01f16824b1b8df4
Signed-off-by: Anna Bencurova <Anna.Bencurova@pantheon.tech>
Signed-off-by: Sanjana B <sanjana.b@verizon.com>
Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
4 years agoAdd option to provide custom SshClient for netconf-client 29/88029/4
Tibor Král [Mon, 24 Feb 2020 15:28:11 +0000 (16:28 +0100)]
Add option to provide custom SshClient for netconf-client

When creating netconf-client the DEFAULT SshClient is
used on the background by the AsyncSshHandler. This adds
the option to provide custom SshClient to be used instead.

JIRA: NETCONF-641
Change-Id: I99b1c2e882353732a2e55d0523ee6adbd1ca8cc0
Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
4 years agoBring doc building up to python3 66/88066/2
Jamo Luhrsen [Wed, 26 Feb 2020 00:52:08 +0000 (16:52 -0800)]
Bring doc building up to python3

looks like readthedocs builds have been failing for a while
because python2 can't find some version of sphinx that is
now required by lfdocs-conf. Maybe an older version of
sphinx would still work, but it's time to catch up to
python3 anyway.

integration/test just added this same .readthedocs.yml
file which finally got it's rtd build to work after
having unknowingly been failing for a month:

https://git.opendaylight.org/gerrit/c/integration/test/+/88064
https://readthedocs.org/projects/odl-integrationtest/builds/?page=1

and netconf has been in the same boat:
https://readthedocs.org/projects/odl-netconf/builds/?page=1

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I63c01d8d9805ee492ebeb4d1b65723ab8a2d59b9

4 years agoFix rst links to different section in same page 58/88058/1
Jamo Luhrsen [Tue, 25 Feb 2020 22:38:25 +0000 (14:38 -0800)]
Fix rst links to different section in same page

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I565a39c562df662d7b6a47d51d86c99d2cefd8ac

4 years agoAdd missing - in docker run command example 51/88051/1
Jamo Luhrsen [Tue, 25 Feb 2020 04:49:34 +0000 (20:49 -0800)]
Add missing - in docker run command example

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I01da0beb803dd86b5440e85c519ca8201a5da57b

4 years agoUpdate testtool download info 32/88032/2
Jamo Luhrsen [Mon, 24 Feb 2020 22:59:19 +0000 (14:59 -0800)]
Update testtool download info

As of this patch, the latest "released" testtool is from
Sodium SR2 so giving a link to that. Otherwise changing
the info to direct folks to the directory with all the
possible versions.

Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
Change-Id: I06037eb2cd4ea3231f88608ea6cf1ecad25d3d9b