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).
This commit is contained in:
parent
de48e262e2
commit
f3c3049e75
|
@ -15,7 +15,7 @@ AC_PROG_LIBTOOL
|
|||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
|
||||
PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 0.1.13)
|
||||
PKG_CHECK_MODULES(LIBTALLOC, talloc)
|
||||
|
||||
# The following test is taken from WebKit's webkit.m4
|
||||
saved_CFLAGS="$CFLAGS"
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#include <assert.h> /* for assert() macro */
|
||||
#endif
|
||||
|
||||
#include <osmocom/core/talloc.h>
|
||||
#include <talloc.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
|
|
@ -6,6 +6,6 @@ includedir=@includedir@
|
|||
Name: asn1c runtime library
|
||||
Description: C Utility Library
|
||||
Version: @VERSION@
|
||||
Libs: -L${libdir} -lasn1c -lm
|
||||
Cflags: -I${includedir}/ -I${includedir}/asn1c
|
||||
Libs: -L${libdir} @LIBTALLOC_LIBS@ -lasn1c -lm
|
||||
Cflags: -I${includedir}/ -I${includedir}/asn1c @LIBTALLOC_CFLAGS@
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
LIBVERSION=1:0:0
|
||||
|
||||
AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include/asn1c
|
||||
AM_CFLAGS = -fPIC -Wall $(LIBOSMOCORE_CFLAGS)
|
||||
AM_CFLAGS = -fPIC -Wall $(LIBTALLOC_CFLAGS)
|
||||
if BUILD_DEBUG
|
||||
AM_CFLAGS += -DEMIT_ASN_DEBUG=1
|
||||
endif
|
||||
|
||||
lib_LTLIBRARIES = libasn1c.la
|
||||
|
||||
libasn1c_la_LDFLAGS = $(LIBOSMOCORE_LIBS)
|
||||
libasn1c_la_LDFLAGS = $(LIBTALLOC_LIBS)
|
||||
libasn1c_la_SOURCES = ANY.c constraints.c GeneralizedTime.c NumericString.c T61String.c asn_codecs_prim.c constr_CHOICE.c GeneralString.c ObjectDescriptor.c TeletexString.c asn_SEQUENCE_OF.c constr_SEQUENCE.c GraphicString.c OBJECT_IDENTIFIER.c UniversalString.c asn_SET_OF.c constr_SEQUENCE_OF.c IA5String.c OCTET_STRING.c UTCTime.c ber_decoder.c constr_SET.c INTEGER.c per_decoder.c UTF8String.c ber_tlv_length.c constr_SET_OF.c ISO646String.c per_encoder.c VideotexString.c ber_tlv_tag.c constr_TYPE.c NativeEnumerated.c per_support.c VisibleString.c BIT_STRING.c NativeInteger.c PrintableString.c xer_decoder.c BMPString.c der_encoder.c NativeReal.c REAL.c xer_encoder.c BOOLEAN.c ENUMERATED.c NULL.c RELATIVE-OID.c xer_support.c per_opentype.c asn1helpers.c
|
||||
|
||||
|
|
|
@ -22,11 +22,15 @@
|
|||
#include <errno.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
#include <osmocom/core/utils.h>
|
||||
|
||||
#include "asn1helpers.h"
|
||||
#include "asn_internal.h"
|
||||
|
||||
#define ASN1C_ASSERT(exp) \
|
||||
if (!(exp)) { \
|
||||
fprintf(stderr, "Assert failed %s %s:%d\n", #exp, __FILE__, __LINE__); \
|
||||
abort(); \
|
||||
}
|
||||
|
||||
void asn1_u32_to_bitstring(BIT_STRING_t *bitstr, uint32_t *buf, uint32_t in)
|
||||
{
|
||||
*buf = htonl(in);
|
||||
|
@ -126,39 +130,39 @@ int asn1_strncpy(char *out, const OCTET_STRING_t *in, size_t n)
|
|||
|
||||
uint32_t asn1str_to_u32(const OCTET_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == sizeof(uint32_t));
|
||||
ASN1C_ASSERT(in && in->size == sizeof(uint32_t));
|
||||
return ntohl(*(uint32_t *)in->buf);
|
||||
}
|
||||
|
||||
uint16_t asn1str_to_u16(const OCTET_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == sizeof(uint16_t));
|
||||
ASN1C_ASSERT(in && in->size == sizeof(uint16_t));
|
||||
return ntohs(*(uint16_t *)in->buf);
|
||||
}
|
||||
|
||||
uint8_t asn1str_to_u8(const OCTET_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == sizeof(uint8_t));
|
||||
ASN1C_ASSERT(in && in->size == sizeof(uint8_t));
|
||||
return *(uint8_t *)in->buf;
|
||||
}
|
||||
|
||||
uint32_t asn1bitstr_to_u32(const BIT_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == sizeof(uint32_t));
|
||||
ASN1C_ASSERT(in && in->size == sizeof(uint32_t));
|
||||
|
||||
return ntohl(*(uint32_t *)in->buf);
|
||||
}
|
||||
|
||||
uint32_t asn1bitstr_to_u28(const BIT_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == sizeof(uint32_t) && in->bits_unused == 4);
|
||||
ASN1C_ASSERT(in && in->size == sizeof(uint32_t) && in->bits_unused == 4);
|
||||
|
||||
return ntohl(*(uint32_t *)in->buf) >> 4;
|
||||
}
|
||||
|
||||
uint32_t asn1bitstr_to_u24(const BIT_STRING_t *in)
|
||||
{
|
||||
OSMO_ASSERT(in && in->size == 3);
|
||||
ASN1C_ASSERT(in && in->size == 3);
|
||||
|
||||
return ntohl(*(uint32_t *)in->buf) >> 8;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue