1 Megaco Release Notes history
1.1 Megaco 2.1.8
Version 2.1.8 supports code replacement in runtime from/to
version 2.1.7 and 2.1.6 except
when using any of the drivers (flex for text or asn1 for binary).
1.1.1 Improvements and new features
-
1.1.2 Fixed bugs and malfunctions
-
The error counter medGwyGatewayNumErrors did not work.
This counter is incremented by the megaco application
when decode of a message fails. Due to the
construction of the decoders, nothing beyond the
error reason (in the text case, basically an
unintelligible list of tokens) is returned. E.g. not
the Mid needed to be able to deduce which MG
(conn-handle), this message came from. This resulted
in an increment of the "global" medGwyGatewayNumErrors
counter instead of the connection specific.
This has been fixed. In the text case by adding a mini
decoder, that basically only decodes the message as
far as the Mid (if the error is in or before the Mid,
then this decoder also fails).
Own Id: OTP-5296
Aux Id: Seq 9669
-
When the
megaco:cancel/2
function is called, the
megaco application is supposed to perform a cleanup.
E.g. remove aut-dated request and reply records. For
the reply-records this did not work, since it only
removed those record which had the state field
set to wait_for_ack, and not aborted!
If the state had been set to aborted and not
yet been removed (which normally happens when
the reply_timer times out) when the disconnect
and cancel functions where called, those records
would never be removed. This means that if eventually
a transaction was received which had the same
transaction-id as the aborted reply, this whould
just be ignored!
Own Id: OTP-5310
Aux Id: Seq 9668
-
Incorrect definition of hexdig in the flex-scanner.
Angelo Contardi
Own Id: OTP-5312
-
Various cleanup of the v2 text parser:
1) Removed unused nonterminal and rule digitMapName.
2) Token 'TimeStampToken' also a safeToken.
Angelo Contardi
Own Id: OTP-5313
1.1.3 Incompatibilities
-
1.2 Megaco 2.1.7
Version 2.1.7 supports code replacement in runtime from/to
version 2.1.6, 2.1.5, 2.1.4, 2.1.3, 2.1.2, 2.1.1 and 2.1 except
when using any of the drivers (flex for text or asn1 for binary).
1.2.1 Improvements and new features
-
1.2.2 Fixed bugs and malfunctions
-
The text decoders failed to decode the contextRequest
with a contextAudit (ContextAttrAuditRequest).
Own Id: OTP-5290
1.2.3 Incompatibilities
-
1.3 Megaco 2.1.6
Version 2.1.6 supports code replacement in runtime from/to
version 2.1.5, 2.1.4, 2.1.3, 2.1.2, 2.1.1 and 2.1 except when using
any of the drivers (flex for text or asn1 for binary).
1.3.1 Improvements and new features
-
Minor error handling improvement to the text encoder.
Own Id: OTP-5193
1.3.2 Fixed bugs and malfunctions
-
The megaco text codec failed to properly encode a message
containing no or an empty terminationAudit list or possibly
a terminationAudit list with only an "empty" emptyDescriptor
(e.g. an AuditDescriptor without any values; auditToken is
either asn1_NOVALUE or []). This effected AmmsReply and
auditOther (AuditResult) and both v1 and v2.
Own Id: OTP-5186
Aux Id: Seq 9226
-
Version 2 codec corrections: Incorrectly transformed (encoded
and decoded) IndAudStreamDescriptor (binary), encoded
IndAudMediaDescriptor and IndAudStreamDescriptor (text).
Incorrectly decoded IndAudMediaDescriptor (text).
Own Id: OTP-5201
1.3.3 Incompatibilities
-
1.4 Megaco 2.1.5
Version 2.1.5 supports code replacement in runtime from/to
version 2.1.4, 2.1.3, 2.1.2, 2.1.1 and 2.1 except when using
any of the drivers (flex for text or asn1 for binary).
1.4.1 Improvements and new features
-
1.4.2 Fixed bugs and malfunctions
-
Bad error message when encoding invalid termination id.
Own Id: OTP-5133
Aux Id: Seq 9153
-
The included tcp transport module had a possible
message queue accumulation loophole. If the
connection is terminated between the calls
gen_tcp:accept/1 and gen_tcp:controlling_process/2
we did not clean up the message queue.
Also, if controlling_process failes, a cleanup must
be done.
Own Id: OTP-5130
1.4.3 Incompatibilities
-
1.5 Megaco 2.1.4
Version 2.1.4 supports code replacement in runtime from/to
version 2.1.3, 2.1.2, 2.1.1 and 2.1 except when using any of the
drivers (flex for text or asn1 for binary).
1.5.1 Improvements and new features
-
1.5.2 Fixed bugs and malfunctions
-
Failure to decode indAudLocalControlDescriptor with
more then one indAudlocalParm.
This applies only to version 2.
Own Id: OTP-5106
1.5.3 Incompatibilities
-
1.6 Megaco 2.1.3
Version 2.1.3 supports code replacement in runtime from/to
version 2.1.2, 2.1.1 and 2.1 except when using any of the
drivers (flex for text or asn1 for binary).
1.6.1 Improvements and new features
-
1.6.2 Fixed bugs and malfunctions
-
Failure to encode a ActionReply with empty contextReply
(asn1_NOVALUE) and commandReply ([]).
Failure to decode ActionReply with error descriptor with
non-empty contextReply and/or commandReply.
This applies to both version 1 and 2.
Own Id: OTP-5085
1.6.3 Incompatibilities
-
1.7 Megaco 2.1.2
Version 2.1.2 supports code replacement in runtime from/to
version 2.1.1 and 2.1 except when using any of the drivers (flex for
text or asn1 for binary).
1.7.1 Improvements and new features
-
1.7.2 Fixed bugs and malfunctions
-
Encoding of a MediaDescriptor fails if the
streams part is empty (asn1_NOVALUE).
Own Id: OTP-5068
1.7.3 Incompatibilities
-
1.8 Megaco 2.1.1
Version 2.1.1 supports code replacement in runtime from/to
version 2.1 except when using any of the drivers (flex for
text or asn1 for binary).
1.8.1 Improvements and new features
-
1.8.2 Fixed bugs and malfunctions
-
A pretty text message containing an ObservedEvents
without timestamp, will fail to decode. This effects
both v1 and v2.
Own Id: OTP-5042
-
During node restart in a high load scenario,
the megaco_messenger:receive_reply_remote function
could be called on a node before the megaco app
has actually been started. This will result in a
crash (EXIT with badarg). This is now handled in the
same way as if the request was not found (with a
call to the callback function handle_unexpected_trans).
Own Id: OTP-5025
Aux Id: Seq 8658
1.8.3 Incompatibilities
-
1.9 Megaco 2.1
1.9.1 Improvements and new features
-
Allow separatelly encode action requests. Handle sending
of those previously encoded action requests as binaries
(as well as lists of action requests).
See
encode_actions,
call and
cast.
-
Introduce a transaction sender process (one for each
connection) which will accumulate transactions and send
several in one message.
See transaction sender,
user_info and
conn_info.
-
New encoding-config options for the erl_dist encoder which
makes it possible to compress the megaco messages. This makes
the erl_dist encoded message much more compact (about 1/3 of
the size).
See megaco_compressed.
1.9.2 Fixed bugs and malfunctions
-
Text parser(s) did not handle parsing of the StreamId field of
RequestedEvent and SecondRequestedEvent.
Own Id: OTP-4974
-
Repeated transaction request receiving when exceeding
pending limit will cause the message handling process
to crash.
Own Id: OTP-4956
Aux Id: Seq 8445
-
Text parser did not handle auditReturnItem properly,
as defined in IGv11.
Own Id: OTP-4950
-
Missing [text] servChgReplyParm constistency check.
Own Id: OTP-4949
-
Incorrect handling of comments in text messages.
Own Id: OTP-4946
-
Missing [text] serviceChangeParm constistency check.
Own Id: OTP-4945
1.9.3 Incompatibilities
-
Text parser did not handle auditReturnItem properly,
as defined in IGv11. The result which was supposed to
have been presented as the tuple:
{emptyDescriptor, #'AuditDescriptor{}}
in the termination audit list, was instead entered as
{auditReturnItem, atom()}
in the termination audit list. This has been fixed.
Own Id: OTP-4950
-
In previous releases there where a couple of user and
connection config items dealing with accumulating
transaction ack sending. These has all been renamed
due to the introduction of the transaction sender.
See transaction sender,
user_info and
conn_info.
1.10 Megaco 2.0.1
1.10.1 Improvements and new features
-
1.10.2 Fixed bugs and malfunctions
-
Megaco did not handle IPv6-addresses.
Own Id: OTP-4920
-
Text encoding of hex-digits sometimes incorrect.
Own Id: OTP-4921
1.10.3 Incompatibilities
-
1.11 Megaco 2.0
1.11.1 Improvements and new features
-
Support for both version 1 & 2 of the Megaco standard,
updated according with IGv10-13.
Version selection is described in chapter
Handling megaco versions 1 & 2.
-
It is now possible to use the ASN.1 linked in driver
for decode/encode of messages (encoding config driver).
See chapter
Configuration of binary encoding module(s).
-
Added a new configuration parameter, orig_pending_limit, to
support the xOriginatingPendingLimit (x = MG or MGC)
property in the root package.
See the
orig_pending_limit
parameter of the user_info function (also conn_info).
-
Added a new configuration parameter, threaded.
This tells the megaco app, that all
transaction requests in a message should be executed
in parallel (e.g. each in it's own process).
See the
threaded parameter
of the user_info function (also conn_info).
-
Added behaviour modules
megaco_transport and
megaco_encoder.
-
Added new (message) test functions to the megaco module, see
test_request and
test_reply.
-
Minor improvements to the tracing.
-
Minor improvements to the simple example.
1.11.2 Fixed bugs and malfunctions
-
Update of the request timer incorrect when receiving
a pending message. Could cause an exit of the process
handling the message and a subsequent call to the
handle_disconnect
callback function.
Own Id: OTP-4836
-
Failed stopping the request timer when receiving a reply.
The only effect this had was that the request timer
possibly ran one extra time (without doing anything).
Own Id: OTP-4843
1.11.3 Incompatibilities
-
signalsDescriptor has changed i v2
-
ServiceChangeProfile has changed in v2
1.12 Megaco 1.2.3
1.12.1 Improvements and new features
-
1.12.2 Fixed bugs and malfunctions
-
Megaco re-transmission loop, when setting the long request timer
to an inremental timer. Megaco changes to the long request timer
when receiving an pending message (after having sent a request).
Each time the (long) timer expire, it will incorrectly result in
an re-send of the request. This is meaningless since we know from
the received pending that the "other side" has received the request
and is working on it. Furthermore, when in this case the "other
side" receives the request again, it will send another pending
message. Receiving a pending message in this case will
restart the timer (reset it to the initial values). This
means that the timer will actually never fully expire and the two
stacks will continue to exchange request/pending messages for as
long as the "other side" is working on the request.
Own Id: OTP-4760
Aux Id: Seq 8003
1.12.3 Incompatibilities
-
1.12.4 Known bugs and problems
-
1.13 Megaco 1.2.2
Version 1.2.2 supports code replacement in runtime from/to
version 1.2.1 and 1.2.
1.13.1 Improvements and new features
-
Only spawn a process for the reply-timer if the user
uses three-way-handshake.
Own Id: OTP-4729
1.13.2 Fixed bugs and malfunctions
-
Encoding and decoding of the hexdig
in AuthenticationHeader incorrect.
Own Id: OTP-4710
1.13.3 Incompatibilities
When downgrading form 1.2.2, reply-timers started when running
1.2.2 will not be properly handled since the format has changed.
An error message will be printed when they expire.
1.13.4 Known bugs and problems
-
1.14 Megaco 1.2.1
Version 1.2.1 only supports code replacement in runtime from/to
version 1.2.
1.14.1 Improvements and new features
-
This is just a code up-/downgrade cleanup release. I.e. It's the
same as version 1.2 minus the ugly stuff needed to handle up-/downgrade
from/to version 1.1.2, 1.1.1 and 1.1.0.
1.14.2 Fixed bugs and malfunctions
-
1.14.3 Incompatibilities
-
1.14.4 Known bugs and problems
-
1.15 Megaco 1.2
Version 1.2 supports code replacement in runtime from/to
version 1.1.2, 1.1.1 and 1.1.0.
1.15.1 Improvements and new features
-
It is now possible to send more then one transaction (request)
in a message. See call
and cast.
Req Id: M[4]-1
Own Id: OTP-4589
-
Two new parameters for user and connection info has been added:
accu_ack_timer
and accu_ack_maxcount
.
These are used together with the auto_ack
flag and control
whether the acks should be sent immediatly or accumulated (and sent
later). Note that this has nothing to do with the
immAckRequired
-flag in reply transactions.
See user_info
and conn_info.
Own Id: OTP-4669
1.15.2 Fixed bugs and malfunctions
-
TCP transport supervision error (cut-and-paste error).
The megaco_tcp worker child was started as if it where a
supervisor (and not a worker) and with a dependency to
megaco_tcp_connection_sup (which it has none)
Own Id: OTP-4649
-
Encoding of transaction ack fails with id ranges.
This was not really a problem in previous releases
since such a message was never created (Ack was, possibly,
sent for each received transaction reply).
Own Id: OTP-4652
1.15.3 Incompatibilities
-
1.15.4 Known bugs and problems
-
Neither the TCP nor the UDP transport mechanisms are
part of the megaco supervsion tree. This makes code up-/downgrade
difficult when either of them are used as transport.
This will be fixed in a future release of megaco.
1.16 Megaco 1.1.2
Version 1.1.2 supports code replacement in runtime from/to
version 1.1.1 and 1.1.0.
1.16.1 Improvements and new features
-
1.16.2 Fixed bugs and malfunctions
-
Service change reason text encoding now always quoted string.
Peter-Henry Mander
Own Id: OTP-4632
1.16.3 Incompatibilities
-
1.16.4 Known bugs and problems
-
1.17 Megaco 1.1.1
Version 1.1.1 supports code replacement in runtime from/to
version 1.1.0.
1.17.1 Improvements and new features
-
Added support for the Megaco mib.
1.17.2 Fixed bugs and malfunctions
-
Result of catch gen_udp:open not properly handled.
Own Id: OTP-4566
1.17.3 Incompatibilities
-
1.17.4 Known bugs and problems
-
1.18 Megaco 1.1.0
Version 1.1.0 does not suppurt code replacement in runtime from
pervious versions.
1.18.1 Improvements and new features
-
Reply ack timeout now results in a call to callback
function handle_trans_ack/4 with AckStatus = {error, timeout}.
Own Id: OTP-4378
-
The binary codecs ber_bin and per_bin is now both compiled
with the +optimize compiler flag for better runtime
performance.
Own Id: OTP-4383
-
The previously included tool, et, has been moved out of the
Megaco application. It is now provided as a separate application
in OTP (as of R9).
Own Id: OTP-4487
-
Added attribute app_vsn to all modules.
Own Id: OTP-4486
1.18.2 Fixed bugs and malfunctions
-
Decode of oneStream incorrect.
.
Own Id: OTP-4490
-
Transaction id counter wrapping incorrect when Max is
infinity
.
Incorrectly the documentation defined a connection info item
min_trans_id
. It should have been trans_id
.
Own Id: OTP-4484
-
Package name check in the text parser incorrect.
Own Id: OTP-4364
-
Fixed a minor build problem causing the file
'megaco_text_parser.yrl' to not be included in the release.
Own Id: OTP-4363
1.18.3 Incompatibilities
-
1.18.4 Known bugs and problems
-
1.19 Megaco 1.0.4
Version 1.0.4 supports code replacement in runtime from/to
version 1.0.2 and 1.0.3.
1.19.1 Improvements and new features
-
Adding utility functions for megaco tracing.
Own Id: OTP-4339
1.19.2 Fixed bugs and malfunctions
-
Optional line-number configure for the megaco flex scanner incorrect.
The intention was that line-numbering could be replaced with
token number in order to improve performance. This did not work
(line-numbers was always chosen). This has no runtime effect.
Own Id: OTP-4336
-
Improved error reporting from the megaco messenger module.
Own Id: OTP-4337
-
Text parsing of type octet string erroneous.
Own Id: OTP-4357
-
A message containing a transaction request without the transaction id value
is incorrectly reported back to the sender with a just an ErrorDescriptor.
The correct behaviour is describen in chapter 8.1.1 of RFC 3015.
Now the result will be a transactioReply with transaction id = 0 and an
ErrorDescriptor.
Own Id: OTP-4359
Aux Id: Seq 7330
1.19.3 Incompatibilities
-
1.19.4 Known bugs and problems
-
1.20 Megaco 1.0.3
1.20.1 Improvements and new features
-
1.20.2 Fixed bugs and malfunctions
-
Handling of comments in text messages incorrect.
For the ordinary text codec comments did not work. For the
flex text codecs, double quoted strings in comments did not
work.
Own Id: OTP-4299
Aux Id: Seq 7330
-
The
streams
field in MediaDescriptor, has been
made optional in order to comply with IGv6 6.50. It does
also mean that the new default value is asn1_NOVALUE
.
Own Id: OTP-4288
-
The user arguments was not supplied to the callback function
handle_unexpected_trans
as described by
megaco_user.
Own Id: OTP-4290
1.20.3 Incompatibilities
-
The scanner item of system info has been removed and instead
been replaced by text_config. Also no longer contains any MFA info.
From now on, just the text config.
1.20.4 Known bugs and problems
-
1.21 Megaco 1.0.2
1.21.1 Improvements and new features
-
Added another binary decoder; per_bin.
To be able to use the per_bin encoder the ASN.1
application of version 1.3.2 or later is needed for R8B systems.
For R7B01, ASN.1 of version 1.3.1.3 or later must be used.
1.21.2 Fixed bugs and malfunctions
-
Memory leak in the flex scanner. Message larger then approx.
1000 bytes cannot be decoded. Will cause a core dump!
Note that this will only be a problem if the flex scanner
has been configured as encoding/decoding module!
Own Id: OTP-4236
-
Fixed Makefile.in for the flex scanner. Removed unneccessary
'-lfl' link option.
Own Id: OTP-4224
-
Installed source was not placed in their proper (sub-)
directory.
1.21.3 Incompatibilities
-
1.21.4 Known bugs and problems
-
1.22 Megaco 1.0.1
1.22.1 Improvements and new features
-
1.22.2 Fixed bugs and malfunctions
-
The megaco application now forward's unexpected replies.
This is done with a call to
handle_unexpected_trans/3.
Own Id: OTP-4212
Aux Id: Seq 7181
-
Megaco leaves entries in the megaco_replies table.
Own Id: OTP-4213
Aux Id: Seq 7208
1.22.3 Incompatibilities
-
1.22.4 Known bugs and problems
-
1.23 Megaco 1.0
1.23.1 Improvements and new features
-
Flex scanner: Added scanner to system info.
1.23.2 Fixed bugs and malfunctions
-
1.23.3 Incompatibilities
-
1.23.4 Known bugs and problems
-
Copyright © 1991-2006
Ericsson AB