s4:kdc: Implement KDC plugin hardware authentication policy
[samba.git] / 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 other subsystems
6 (such as LIBUTIL).
7
8 The following functions are guaranteed:
9
10 ftruncate
11 strlcpy
12 strlcat
13 mktime
14 rename
15 initgroups
16 memmove
17 strdup
18 setlinebuf
19 vsyslog
20 timegm
21 setenv
22 unsetenv
23 strndup
24 strnlen
25 waitpid
26 seteuid
27 setegid
28 asprintf
29 snprintf
30 vasprintf
31 vsnprintf
32 opendir
33 readdir
34 telldir
35 seekdir
36 clock_gettime
37 closedir
38 dlopen
39 dlclose
40 dlsym
41 dlerror
42 chroot
43 bzero
44 strerror
45 errno
46 mkdtemp
47 mkstemp (a secure one!)
48 pread
49 pwrite
50 chown
51 lchown
52 readline (the library)
53 inet_ntoa
54 inet_ntop
55 inet_pton
56 inet_aton
57 strtoll
58 strtoull
59 socketpair
60 strptime
61 getaddrinfo
62 freeaddrinfo
63 getnameinfo
64 gai_strerror
65 getifaddrs
66 freeifaddrs
67 utime
68 utimes
69 dup2
70 link
71 readlink
72 symlink
73 realpath
74 poll
75 setproctitle
76 memset_s
77
78 Types:
79 bool
80 socklen_t
81 uint{8,16,32,64}_t
82 int{8,16,32,64}_t
83 intptr_t
84 sig_atomic_t
85 blksize_t
86 blkcnt_t
87
88 Constants:
89 PATH_NAME_MAX
90 UINT{16,32,64}_MAX
91 INT32_MAX
92 RTLD_LAZY
93 HOST_NAME_MAX
94 UINT16_MAX
95 UINT32_MAX
96 UINT64_MAX
97 CHAR_BIT
98
99 Macros:
100 va_copy
101 __FUNCTION__
102 __FILE__
103 __LINE__
104 __LINESTR__
105 __location__
106 __STRING
107 __STRINGSTRING
108 MIN
109 MAX
110 QSORT_CAST
111 ZERO_STRUCT
112 ZERO_STRUCTP
113 ZERO_STRUCTPN
114 ZERO_ARRAY
115 ARRAY_SIZE
116 PTR_DIFF
117
118 Headers:
119 stdint.h
120 stdbool.h
121
122 Optional C keywords:
123 volatile
124
125 Prerequisites:
126 memset (for bzero)
127 syslog (for vsyslog)
128 mktemp (for mkstemp and mkdtemp)