Commit Graph

30 Commits

Author SHA1 Message Date
Pau Espin 7965ac7a2e Bump version: 0.9.35.7-a1a8 → 0.9.36
Change-Id: I34d172f7aa73c4e9b83ac553403b9ca248ee0aed
2023-09-12 12:34:29 +02:00
Oliver Smith a1a8861cdf INTEGER: ignore warning for all GCC versions
The warning appears again with GCC 12 in Debian 12, causing the build to
fail with --enable-werror. GCC 11 did not complain about it. As there
are numerous bug reports about this in GCC's bug tracker, just disable
it for all GCC versions.

Related: adaa1c62e1
Related: OS#6057
Change-Id: I48d9d423df47f23a0ef3ea727a40b53d70aec48b
2023-07-13 13:46:27 +02:00
Oliver Smith adaa1c62e1 INTEGER: ignore invalid -Warray-bounds from GCC-10
GCC 10.2.1 20210110 from Debian 11 generates an invalid Warray-bounds
error. It was fixed in future GCC versions, I verified it with GCC
11.3.0. Ignore the warning, so we can build on Debian 11 with -Werror.

Fix for:
  INTEGER.c: In function ‘asn_int642INTEGER’:
  INTEGER.c:1340:34: error: array subscript 0 is outside array bounds of ‘int64_t[1]’ {aka ‘long int[1]’} [-Werror=array-bounds]
   1340 |  for(pstart = p, bp = buf, pend1 += add; p != pend1; p += add)
        |                            ~~~~~~^~~~~~
  INTEGER.c:1296:42: note: while referencing ‘value’
   1296 | asn_int642INTEGER(INTEGER_t *st, int64_t value) {
        |                                  ~~~~~~~~^~~~~

Related: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93582
Change-Id: Ic10407e6d484ae29dc39edbdc6fcd0145e17e773
2023-03-21 15:24:37 +00:00
Vadim Yanitskiy d762965f77 src/Makefile.am: libraries shall not be in LDFLAGS but in LIBADD
Change-Id: I53dd51ab1f4666c42851a6cbdf1ee970530edee1
2023-03-13 04:35:16 +07:00
Neels Hofmeyr 71cb3d49a8 fix 3 indents to avoid build failure with -Werror
The build failures complain about misleading indentation:

 ../../../src/libasn1c/src/per_decoder.c:161:9: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
  161 |         if(!td->aper_decoder)
      |         ^~
 ../../../src/libasn1c/src/per_decoder.c:163:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  163 |                 rval = td->aper_decoder(opt_codec_ctx, td, 0, sptr, &pd);
      |                 ^~~~

Change-Id: I9ebd0de9135722bb718e2a5067f9b8238d0483dc
2022-07-19 14:04:21 +02:00
Pau Espin 8ca552813c Fix LIBVERSION not applied
Change-Id: I232c2fdcc5e9dc821fbea6e7dc498b6ed5b460a9
2019-08-07 13:25:49 +02:00
Pau Espin 671fef29c1 Bump version: 0.9.28 → 0.9.29
Change-Id: Ib7cc5d297496b7f7235145602f98d6aef614e531
2018-05-03 17:18:02 +02:00
Neels Hofmeyr 551e9c94b3 fix compiler warning: drop dead code from BIT_STRING_fromBuf()
The warning is, on FreeBSD,

  CC       asn1helpers.lo
asn1helpers.c:68:10: error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare]
        if (len < 0)
            ~~~ ^ ~

Change-Id: I80867da697d744d7ef4d70c8f24031f5781fb11a
2017-10-28 15:09:05 +00:00
Harald Welte 0e1a6450a4 link libasn1c against libmath, don't ask users to do it
libasn1c is using libm[ath] symbols from REAL.c and hence should be
linked using '-lm' to carry a dynamic linker dependency itself.

We shouldn't use a pkg-config hack to ask applications to do this on
our behalf.

Change-Id: Ie107f7252eeed90233468deaef57d3cee36abdf4
2017-10-28 13:58:23 +02:00
Harald Welte 8d9147a764 Fix compiler warning
/usr/include/features.h:148:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
 # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
   ^~~~~~~

Change-Id: I442e60413b3bee6d365cd5df672a558d68998670
2017-10-27 22:05:31 +02:00
Harald Welte c8512b1510 Re-license asn1helper.c under identical license as upstream
asn1helpers.c originally existed in the repository of an application
(osmo-hnbgw, IIRC), and hence was under AGPLv3.  When moving it to
this repository, it should have been relicensed but wasn't.  The
intention was never to "contaminate" (lib)asn1c with AGPLv3 code.

Change-Id: I8e714d4c51d771b1eabec7aa06e7daae73f48b15
2017-08-14 06:14:38 +00:00
Harald Welte 20d668cbd3 aper fix for decoding constrained integer with lower boundary
When decoding a constrained integer with a lower boundary, we need
to make sure the lower bound is added after decoding the raw offset
inside the range.

Before this change, RANAP_CauseMisc_unspecified_failure (115) would be
encoded as 2 (115 - 113 = 2), but would be decoded as 2, rather than
113+2 = 115.

Code for this was taken from
openairinterface5g/openair3/S1AP/MESSAGES/ASN1/asn1cpatch.p0 which
unfortunately doesn't carry much of a revision history :/
2016-05-01 01:05:34 +02:00
Harald Welte c867ddeb30 fix APER encoding of integer (backport from openairinterface)
The number of bytes used by an APER encoded integer depends on its
actually encoded value, not on the maximum value that could be possibly
encoded.

The old code would e.g. always use 24 bits if the maximum encoded value
would require 24 bits.

To give an example RANAP MaxBitrate (INTEER 1 .. 16000000) value 64000
was previously encoded as "80 00 f9 ff", while it is now the correct
representation "40 f9 ff".

Thanks to Dieter Spaar for detecting this problem in the Osmo-IUH
generated RANAP output, and thanks to openairinterface for fixing the
bug in their code (sadly not contributed to upstream asn1c, though).
2016-04-30 17:39:04 +02:00
Holger Hans Peter Freyther f3c3049e75 misc: Replace libosmocore with talloc
The libosmocore depedency is used for talloc and OSMO_ASSERT.
Reduce the depedencies by using libtalloc directly and replace
the ASSERT with a local one (without backtrace support).
2016-04-05 16:43:39 +02:00
Neels Hofmeyr 578ecbbf62 cosmetic: cast to avoid compiler warning 2016-02-16 12:23:23 +01:00
Daniel Willmann 95a112f75a Add helper functions for uint32_t in octet strings 2016-02-16 12:10:36 +01:00
Harald Welte 2d4f2bd91c import ans1helpers.[ch] (originally part of osmo-iuh) 2016-01-03 17:14:54 +01:00
Harald Welte 667d758c92 APER: Fix encoding of INTEGER with lower_bound != 0
When encoding an INTEGER, we need to subtract the lower bound before
encoding the value.  This is specified in Clause 10.5.7.x of X.691.

The decoder already does this correct, but the encoder was wrong.
2015-12-19 13:37:02 +01:00
Harald Welte a37b06d735 add '--enable-debug' configure option to build with EMIT_ASN_DEBUG
... which in turn causes all the ASN_DEBUG() to be turned into
fprintf(stderr, ...) statements, once the user application decides
to set 'asn_debug = 1' somewhere in its code.

The next step would be to make _ASN_DECODE_FAILED / _ASN_ENCODE_FAILED
no longer depend on ASN_DEBUG (which it currently does)
2015-12-18 15:38:42 +01:00
Harald Welte 41b85d5597 update to asn1c aper branch commit 6e00cbce7304a6972e82a12bb5fa82e41fa541be
which is closes to Lev Walkins master 62913d8b8e1eb96d74315ff748475ca818b69752
2015-08-31 09:35:13 +02:00
Harald Welte f6b9173b02 fix autoconf/automake warnings 2015-08-31 09:25:52 +02:00
Sylvain Munaut ee1a5c9ae3 per_support: Fix bit error in encoding process
Thanks to Dieter Spaar for finding and fixing this !
2010-07-20 00:11:06 +02:00
Sylvain Munaut 64fdc4cb06 src: Print member's name in CHOICE print
Sometimes, if the choice is a null or integer or ...
it's not easy to know what has really been selected without
the choice member name.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-20 00:10:57 +02:00
Sylvain Munaut b9d517e755 src: Add verbose pretty print for enumerated types
This is just much easier to read when reading the text
dumps.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-20 00:10:38 +02:00
Harald Welte fa034009a1 Convert libasn1c to use talloc from libosmocore 2010-07-20 00:05:07 +02:00
Harald Welte ec0e217b06 Update to asn1c official repository svn trunk r1409 2010-07-20 00:03:44 +02:00
Harald Welte 96afdfdc64 Remove converter-sample.c, as it is not part of the runtime library 2010-06-13 09:38:56 +02:00
Harald Welte 98cb83615d move header files to 'include' directory and install them 2010-06-12 19:15:51 +02:00
Harald Welte bdff5e6309 Add autotools/pkgconfig magic 2010-06-12 19:05:23 +02:00
Harald Welte 92c45f3390 initial import of /usr/share/asn1c/*.[ch] skeleton files 2010-06-12 18:59:38 +02:00