r15868: Add replacement macro for __STRING()
[jelmer/samba4-debian.git] / source / lib / replace / README
1 This subsystem ensures that we can always use a certain core set of 
2 functions and types, that are either provided by the OS or by replacement 
3 functions / definitions in this subsystem. The aim is to try to stick 
4 to POSIX functions in here as much as possible. Convenience functions 
5 that are available on no platform at all belong in different subsystems
6 (such as LIBUTIL).
7
8 The following functions are guarenteed:
9
10 ftruncate
11 strlcpy
12 strlcat
13 mktime
14 rename
15 innetgr
16 initgroups
17 memmove
18 strdup
19 inet_ntoa
20 setlinebuf
21 vsyslog
22 timegm
23 setenv
24 strtoull
25 strtoll
26 strndup
27 strnlen
28 waitpid
29 seteuid
30 setegid
31 asprintf
32 snprintf
33 vasprintf
34 vsnprintf
35 opendir
36 readdir
37 telldir
38 seekdir
39 closedir
40 dlopen
41 dlclose
42 dlsym
43 dlerror
44 chroot
45 bzero
46 strerror
47 errno
48 mkstemp (a secure one!)
49 pread
50 pwrite
51 getpass
52 readline (the library)
53 inet_ntoa
54
55 Types:
56 bool
57 socklen_t
58 u_int{8,16,32}_t
59 uint_t
60 uint{8,16,32,64}_t
61 int{8,16,32,64}_t
62
63 Constants:
64 PATH_NAME_MAX
65 UINT16_MAX
66 UINT32_MAX
67 UINT64_MAX
68
69 Macros:
70 va_copy
71 __FUNCTION__
72 __STRING
73 MIN
74 MAX
75
76 Prerequisites:
77 memset (for bzero)
78 syslog (for vsyslog)
79 setnetgrent, getnetgrent, endnetgrent (for innetgr)
80 mktemp (for mkstemp)