1c0b746e5SOllivier Robert /* 2c0b746e5SOllivier Robert * Define string ops: strchr strrchr memcmp memmove memset 3c0b746e5SOllivier Robert */ 4c0b746e5SOllivier Robert 5*2b15cb3dSCy Schubert #ifndef NTP_STRING_H 6*2b15cb3dSCy Schubert #define NTP_STRING_H 7c0b746e5SOllivier Robert 8c0b746e5SOllivier Robert #ifdef HAVE_MEMORY_H 9c0b746e5SOllivier Robert # include <memory.h> 10c0b746e5SOllivier Robert #endif 11c0b746e5SOllivier Robert 12c0b746e5SOllivier Robert #ifdef HAVE_STRING_H 13c0b746e5SOllivier Robert # include <string.h> 14c0b746e5SOllivier Robert #endif 15c0b746e5SOllivier Robert 16c0b746e5SOllivier Robert #ifdef HAVE_BSTRING_H 17c0b746e5SOllivier Robert # include <bstring.h> 18c0b746e5SOllivier Robert #endif 19c0b746e5SOllivier Robert 20c0b746e5SOllivier Robert #ifdef NTP_NEED_BOPS 21c0b746e5SOllivier Robert 22*2b15cb3dSCy Schubert #ifdef HAVE_STRINGS_H 23*2b15cb3dSCy Schubert # include <strings.h> /* bcmp, bcopy, bzero */ 24*2b15cb3dSCy Schubert #endif 25c0b746e5SOllivier Robert 26*2b15cb3dSCy Schubert void ntp_memset (char *, int, int); 27*2b15cb3dSCy Schubert 28*2b15cb3dSCy Schubert #define memcmp(a, b, c) bcmp(a, b, (int)(c)) 29*2b15cb3dSCy Schubert #define memmove(t, f, c) bcopy(f, t, (int)(c)) 30*2b15cb3dSCy Schubert #define memcpy(t, f, c) bcopy(f, t, (int)(c)) 31*2b15cb3dSCy Schubert #define memset(a, x, c) if (0 == (x)) \ 32*2b15cb3dSCy Schubert bzero(a, (int)(c)); \ 33*2b15cb3dSCy Schubert else \ 34*2b15cb3dSCy Schubert ntp_memset((char *)(a), x, c) 35c0b746e5SOllivier Robert #endif /* NTP_NEED_BOPS */ 36c0b746e5SOllivier Robert 37*2b15cb3dSCy Schubert #endif /* NTP_STRING_H */ 38