| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When translating guards, any calls to BIFs that are not known
to always return booleans should be wrapped in a comparison
with `true`. This was not done for `float/1` BIF (as a conversion
function, not the obsolete type test). Here is an example of
a function where the `float/1` calls were not wrapped:
foo(X) when float(X) or float(X) -> ok.
Not wrapping `float/1` happens to be harmless, but is an
annyoing inconsistency.
With the correction, the guard will be rewritten like this
during the translatation to Core Erlang:
foo(X) when (float(X) =:= true) or (float(X) =:= true) -> ok.
|
|\ |
|
| |\
| | |
| | |
| | |
| | |
| | | |
* lukas/erts/lttng-fixes:
erts: Create ets load for lttng on seperate node
erts: Update lttng tests to work again after emulator changed
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is needed so that we know that carriers will be
created. If not then the ets testcases may have created
enough carriers so that they will be reused here and we
don't get the events that we expect.
|
| | |
| | |
| | |
| | |
| | |
| | | |
The lttng testcases assume that file handling is done through
a port and that polling is done in the scheduler. This is no
longer true so we have to update the tests.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* maint:
Fix auto timer cancel bug
|
| |\ \
| | | |
| | | |
| | | |
| | | | |
* raimo/stdlib/gen_statem-improve-timers/OTP-15510:
Fix auto timer cancel bug
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* anders/common_test/NETCONF-1.1/OTP-15789:
Tweak documentation
Fix handling of non-RPC reply
Simplify request timers
Fix inaccurate comment
Replace create_subscription/1-6 in 15 variants
Fix documentation/spec of ssh-related options
Be flexible with capabilities specification
Document connect/hello timeout in one place
Let capabilities be set for all session establishment
Handle reception of invalid session-id
Add ct_netconfc support for NETCONF 1.1
Don't treat reception of NETCONF > 1.0 hello as error
|
| | | | |
| | | | |
| | | | |
| | | | | |
Improve some wording and language, more details, minor fixes.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Reception of a reply to a message sent with send/2,3 caused other
pending requests to be discarded. Corresponding replies from the server
were then discarded and the function calls that sent the requests timed
out, which is particularly unfortunate with the default (infinity)
timeout.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use erlang:start_timer/3 instead of timer:send_after/2 to remove the
need for creating an extra reference to be sent in the timeout message.
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
With create_subscription/2,3 taking a map containing values; arity 2
without a timeout and arity 3 with, for consistency with other functions
in the module. The old clauses remain for backwards compatibility (with
simplified type specs, good enough to avoid warnings), but are no longer
documented.
Allow stopTime without startTime to be able to send such an invalid
message (according to RFC 5277) to a server.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Only user/password/user_dir were included in the type spec, and
SshConnectOption didn't refer to anything.
Add host as a more sane synonym for the existing ssh option.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Don't require that the user wrap a capability string in a list, and
accept the RFC 4721/6241 shorthand for NETCONF capabilities, a
capability starting with a colon being appropriately prefixed. Any deep
character list will do, but only document string() | [string()]
for lack of a builtin deep character list type.
For example, allow {capability, ":base:1.1"} instead of requiring
{capability, ["urn:ietf:params:netconf:base:1.1"]}.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
With the type, not separately for each function in which it's
referenced.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Commit e69da353 added the possibility of passing capabilities to
hello/3, but didn't allow them to be passed into open/2. Not strictly
necessary, but simpler than having to call only_open/2 followed by
hello/3 if all that's wanted is to add capabilties to the hello message.
Commit 63d63920 then added session/3 for multiple channels per
connection, but no way of passing capabilities or omitting hello, the
former now being a problem if the user wants to send the NETCONF 1.1
base capability.
Give the user control over capabilities by allowing them to be passed to
session/3, and to open/2 for consistency, but don't do anything about
avoiding hello in session/3.
That capabilities have to be specified as a list of strings makes little
sense for the user, but is because commit e69da353 passed what
xmerl:export_simple/3 wanted. Also leave this as is for now.
Don't document server capabilities since these depend on the NETCONF
version.
The history isn't clear, but an option to delay hello by some specified
amount of time (or indefinitely) may have been a simpler alternative to
what only_open/hello are meant to achieve.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
RFC 6241 says the following in 8.1 Capabilities Exchange.
A server sending the <hello> element MUST include a <session-id>
element containing the session ID for this NETCONF session. A client
sending the <hello> element MUST NOT include a <session-id> element.
A server receiving a <hello> message with a <session-id> element MUST
terminate the NETCONF session. Similarly, a client that does not
receive a <session-id> element in the server's <hello> message MUST
terminate the NETCONF session (without first sending a
<close-session>).
This doesn't say anything about the type of session-id, but the XML
schema in Appendix B defines it as a positive integer, and receiving an
invalid value is reasonably equivalent to not receiving the element
at all.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The 1.1 base capability can now be passed to hello/3, and the version
selected for the session is as required by RFC 6241, 8.1 Capabilities
Exchange:
Both NETCONF peers MUST verify that the other peer has advertised a
common protocol version. When comparing protocol version capability
URIs, only the base part is used, in the event any parameters are
encoded at the end of the URI string. If no protocol version
capability in common is found, the NETCONF peer MUST NOT continue the
session. If more than one protocol version URI in common is present,
then the highest numbered (most recent) protocol version MUST be used
by both peers.
Negotiation of 1.1 (or any version greater than 1.0) results in message
being chunked as required by RFC 6242, instead of the 1.0 framing
(]]>]]>) specified by RFC 4742.
For backwards compatibility, the 1.0 base capability is added to any
capabilities specified by the user only if no base capability is
specified. That is, no user-specified base capability results in 1.0
being added, otherwise it's up to the user to specify all base
capabilities.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Module ct_netconfc appears to have followed the introduction of NETCONF
1.1 in RFC 6241, but assumes NETCONF 1.0 (RFC 4741). A server supporting
the 1.1 can send the corresponding base capability in hello, which
caused ct_netconfc to close the connection. Now simply ignore any
version but 1.0, and fail only if the server doesn't advertise 1.0.
Actual support for 1.1 is still missing: being able to agree on this
version with the peer and receive messages that are chunked as specified
in RFC 6242.
|
|\ \ \ \ \
| | |/ / /
| |/| | |
| | | | |
| | | | | |
* maint:
ftp: Break loop
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* hans/ftp/break_infinit_loop/OTP-16056:
ftp: Break loop
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
when a partial message is in CtrlData. Appending <<>> from activate_ctrl_connection (2nd clause) will cause the {continue,NewCtrlData} to be selected. But since NewCtrlData == CtrlData, an infinite loop did occur.
|
|\ \ \ \ \ \
| |/ / / / / |
|
| |\ \ \ \ \
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | | |
* ingela/inets/httpd-status-code/OTP-16049:
inets, httpd: Use actual statuscode instead of hardcoding 200
|
|\ \ \ \ \ \
| |/ / / / /
| | | | | |
| | | | | |
| | | | | | |
* maint:
ssh: Type daemon_info_tuple added in doc
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
* hans/ssh/connection_info_update_doc/OTP-16040:
ssh: Type daemon_info_tuple added in doc
|
| | | | | | | |
|
|\ \ \ \ \ \ \ |
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* ingela/ssl/compiler-warning:
ssl: Remove unused variable warning
|
| | | | | | | | | |
|
| |\ \ \ \ \ \ \ \
| | |_|/ / / / / /
| |/| | | / / / /
| | | |_|/ / / /
| | |/| | | | | |
* ingela/inets/httpd-status-code/OTP-16049:
inets, httpd: Use actual statuscode instead of hardcoding 200
|
| | | | | | | | |
|
|\ \ \ \ \ \ \ \
| |/ / / / / / / |
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* lars/support-fop21/OTP-16051:
Support fop 2.1 in the build support for the documentation
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* maint:
Update documentation after review
Change data structure for Timers
Implement timeout cancel and update
Improve sys:log of timeouts
Log time-outs in crash and get_status
|
| |\ \ \ \ \ \ \ \
| | | |_|_|_|_|/ /
| | |/| | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* raimo/stdlib/gen_statem-improve-timers/OTP-15510:
Update documentation after review
Change data structure for Timers
Implement timeout cancel and update
Improve sys:log of timeouts
Log time-outs in crash and get_status
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* maint:
Mention action handling details in user's guide
Clarify handling of Actions
|
| |\ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
* raimo/doc-cleanup:
Mention action handling details in user's guide
Clarify handling of Actions
|
| | | | | | | | | | |
|
| | |/ / / / / / / |
|
|\ \ \ \ \ \ \ \ \
| |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
* maint:
Make check of delay_send error more forgiving
|
| |\ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
* raimo/test-cuddling:
Make check of delay_send error more forgiving
|