From 7d39839fed87da011d486285acedbca11674a6a1 Mon Sep 17 00:00:00 2001 From: vlm Date: Tue, 21 Nov 2006 10:38:50 +0000 Subject: [PATCH] ntohl git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@1269 59561ff5-6e30-0410-9f3c-9617f08c8826 --- skeletons/asn_system.h | 9 +++++++++ skeletons/constr_SET.c | 8 +------- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/skeletons/asn_system.h b/skeletons/asn_system.h index 6dcca0eb..f920efc9 100644 --- a/skeletons/asn_system.h +++ b/skeletons/asn_system.h @@ -26,6 +26,12 @@ #define snprintf _snprintf #define vsnprintf _vsnprintf +/* To avoid linking with ws2_32.lib, here's the definition of ntohl() */ +#define sys_ntohl(l) ((((l) << 24) & 0xff000000) + | (((l) << 16) & 0xff0000) + | (((l) << 8) & 0xff00) + | ((l) & 0xff)) + #ifdef _MSC_VER /* MSVS.Net */ #ifndef __cplusplus #define inline __inline @@ -74,6 +80,9 @@ typedef unsigned int uint32_t; #endif /* defined(sun) */ #endif +#include /* for ntohl() */ +#define sys_ntohl(foo) ntohl(foo) + #endif /* defined(__vxworks) */ #endif /* WIN32 */ diff --git a/skeletons/constr_SET.c b/skeletons/constr_SET.c index 2c5d5d0b..ecf56617 100644 --- a/skeletons/constr_SET.c +++ b/skeletons/constr_SET.c @@ -6,12 +6,6 @@ #include #include -#ifndef WIN32 -#include /* for ntohl() */ -#else -#include /* for ntohl() */ -#endif - /* Check that all the mandatory members are present */ static int _SET_is_populated(asn_TYPE_descriptor_t *td, void *st); @@ -411,7 +405,7 @@ _SET_is_populated(asn_TYPE_descriptor_t *td, void *st) { midx = edx/(8 * sizeof(specs->_mandatory_elements[0])); pres = ((unsigned int *)((char *)st+specs->pres_offset))[midx]; - must = ntohl(specs->_mandatory_elements[midx]); + must = sys_ntohl(specs->_mandatory_elements[midx]); if((pres & must) == must) { /*