wireshark/epan/dissectors/asn1/e2ap
Guy Harris 86af1d6707 e2ap: fix a compiler warning due to a strange maxofRICrequestID value.
The minimum and maximum length arguments to
dissect_per_constrained_set_of() are currently both ints.

According to O-RAN.WG3.E2AP-v02.03, section 9.3.7 "Constant
definitions", maxofRICrequestID is 1024, not 2^32-1; however, we were
specifying it as 2^32-1 (4294967295).

2^32-1 won't fit into an int, and Apple clang version 14.0.0
(clang-1400.0.29.102) warns about that:

    ./asn1/e2ap/e2ap.cnf:647:54: error: implicit conversion from 'long' to 'int' changes value from 4294967295 to -1 [-Werror,-Wconstant-conversion]
                                                      1, maxofRICrequestID, FALSE);
                                                         ^~~~~~~~~~~~~~~~~
    ./asn1/e2ap/packet-e2ap-val.h:7:40: note: expanded from macro 'maxofRICrequestID'
    #define maxofRICrequestID              4294967295
                                           ^~~~~~~~~~

The handling of MIN and MAX should be done with separate "minimum is
MIN" and "maximum is MAX" flags, and we might want either to have
asn2wrs.py reject attempts to have constraints with integer minimum and
maximum values outside the range [-2^31, 2^31-1], make the types for
sizes unsigned, or allow 64-bit constraints (and still limit the
constraint values, so we don't have to dive down a bignum rathole).

But, for now, we just change maxofRICrequestID to match what the 2022-10
version of the spec, 2.03, appears to say.

(I can't find the 2.01 version online, so I don't know whether it was
1024 in 2.01, or if it was changed in 2.02 or 2.03.)
2022-10-27 23:57:51 -07:00
..
CMakeLists.txt
E2AP-CommonDataTypes.asn
E2AP-Constants.asn e2ap: fix a compiler warning due to a strange maxofRICrequestID value. 2022-10-27 23:57:51 -07:00
E2AP-Containers.asn
E2AP-IEs.asn
E2AP-PDU-Contents.asn
E2AP-PDU-Descriptions.asn
e2ap.cnf
e2sm-kpm-v2.02.asn
e2sm-ric-v1.02.asn
e2sm-v2.01.asn
packet-e2ap-template.c