Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-01 08:52:28

0001 /*
0002  * $Id$
0003  *
0004  * $Log$
0005  * Revision 1.2  1997/03/14 17:16:39  mclareni
0006  * WNT mods
0007  *
0008  * Revision 1.1.1.1  1996/03/08 15:33:01  mclareni
0009  * Kuip
0010  *
0011  */
0012 
0013 #include <string.h>
0014 
0015 #ifdef __cplusplus
0016 extern "C" {
0017 #endif
0018 
0019 /*
0020  * quasi-standard functions missing in some C-libraries
0021  */
0022 
0023 #ifndef WIN32
0024 #ifndef memmove
0025 extern void* memmove( void* dst, const void* src, size_t n );
0026 #endif
0027 #endif
0028 
0029 /* GF. make conform to kkern.c#if !defined(__convexc__)*/
0030 #ifndef HAVE_STRCASECMP
0031 extern int   strcasecmp( const char* str1, const char* str2 );
0032 extern int   strncasecmp( const char* str1, const char* str2, size_t n );
0033 #endif
0034 
0035 extern char* strrstr( const char* str1, const char* str2 );
0036 
0037 #ifdef strdup
0038 # undef strdup /* otherwise the next function declaration may bomb */
0039 #endif
0040 #define strdup Strdup           /* prototype without const */
0041 extern char* strdup( const char* str );
0042 
0043 
0044 /*
0045  * convenience functions from kkern.c
0046  */
0047 extern char* str0dup( const char* str );
0048 extern char* str2dup( const char* str1, const char* str2 );
0049 extern char* str3dup( const char* str1, const char* str2, const char* str3 );
0050 extern char* str4dup( const char* str1, const char* str2, const char* str3,
0051                      const char* str4 );
0052 extern char* str5dup( const char* str1, const char* str2, const char* str3,
0053                      const char* str4, const char* str5 );
0054 
0055 #ifdef strndup
0056 # undef strndup /* otherwise the next function declaration may bomb */
0057 #endif
0058 extern char* strndup( const char* buf, size_t n );
0059 extern char* stridup( int i );
0060 
0061 extern char* mstrcat( char* ptr, const char* str );
0062 extern char* mstr2cat( char* ptr, const char* str1, const char* str2 );
0063 extern char* mstr3cat( char* ptr, const char* str1, const char* str2,
0064                       const char* str3);
0065 extern char* mstr4cat( char* ptr, const char* str1, const char* str2,
0066                       const char* str3, const char* str4 );
0067 extern char* mstrncat( char* ptr, const char* buf, size_t n );
0068 extern char* mstrccat( char* ptr, char c, size_t n );
0069 extern char* mstricat( char* ptr, int i );
0070 
0071 extern char* strrpbrk( const char* str1, const char* str2 );
0072 extern char* strqtok( char* str );
0073 extern char* strlower( char* str );
0074 extern char* strupper( char* str );
0075 extern char* strtrim( char* str );
0076 extern char* struntab( char* str );
0077 extern char* strfromd9( double d, size_t prec );
0078 extern char* strfromi( int i, size_t prec );
0079 extern char* strblk0( char* str );
0080 
0081 extern int   shsystem( const char* shell, const char* cmd );
0082 extern int   checksum( const char* path );
0083 
0084 extern char* fexpand( const char* fname, const char* ftype );
0085 extern char* fsearch( const char* fname, const char* ftype, const char* path );
0086 extern char* fsymlink( const char* path );
0087 
0088 extern char* fstrdup( const char* buf, size_t len );
0089 extern char* fstr0dup( const char* buf, size_t len );
0090 extern char* fstrtrim( const char* buf, size_t len );
0091 extern char* fstr0trim( const char* buf, size_t len );
0092 
0093 extern size_t fstrlen( const char* buf, size_t len );
0094 extern size_t fstrset( char* buf, size_t len, const char* str );
0095 extern double fstrtod( const char* str, char** tail );
0096 extern int    fstrtoi( const char* str, char** tail );
0097 extern char*  fstrvec( char** pstr, size_t n, size_t* len );
0098 extern size_t mstrlen( char** pstr, size_t n );
0099 
0100 #ifdef __cplusplus
0101 }
0102 #endif
0103 
0104