xf.li | bdd93d5 | 2023-05-12 07:10:14 -0700 | [diff] [blame] | 1 | libc { |
| 2 | GLIBC_2.0 { |
| 3 | pthread_attr_destroy; pthread_attr_init; |
| 4 | pthread_attr_getdetachstate; pthread_attr_setdetachstate; |
| 5 | pthread_attr_getinheritsched; pthread_attr_setinheritsched; |
| 6 | pthread_attr_getschedparam; pthread_attr_setschedparam; |
| 7 | pthread_attr_getschedpolicy; pthread_attr_setschedpolicy; |
| 8 | pthread_attr_getscope; pthread_attr_setscope; |
| 9 | pthread_condattr_destroy; pthread_condattr_init; |
| 10 | pthread_cond_broadcast; pthread_cond_destroy; |
| 11 | pthread_cond_init; pthread_cond_signal; pthread_cond_wait; |
| 12 | pthread_cond_timedwait; |
| 13 | pthread_equal; pthread_exit; |
| 14 | pthread_getschedparam; pthread_setschedparam; |
| 15 | pthread_mutex_destroy; pthread_mutex_init; |
| 16 | pthread_mutex_lock; pthread_mutex_unlock; |
| 17 | pthread_self; |
| 18 | pthread_setcancelstate; pthread_setcanceltype; |
| 19 | } |
| 20 | GLIBC_2.1 { |
| 21 | pthread_attr_init; |
| 22 | } |
| 23 | GLIBC_2.3.2 { |
| 24 | __register_atfork; |
| 25 | |
| 26 | # Changed pthread_cond_t. |
| 27 | pthread_cond_init; pthread_cond_destroy; |
| 28 | pthread_cond_wait; pthread_cond_signal; |
| 29 | pthread_cond_broadcast; pthread_cond_timedwait; |
| 30 | } |
| 31 | GLIBC_PRIVATE { |
| 32 | __libc_alloca_cutoff; |
| 33 | # Internal libc interface to libpthread |
| 34 | __libc_dl_error_tsd; |
| 35 | __libc_vfork; |
| 36 | __libc_pthread_init; |
| 37 | __libc_current_sigrtmin_private; __libc_current_sigrtmax_private; |
| 38 | __libc_allocate_rtsig_private; |
| 39 | } |
| 40 | } |
| 41 | |
| 42 | libpthread { |
| 43 | GLIBC_2.0 { |
| 44 | pthread_create; pthread_join; pthread_self; pthread_equal; |
| 45 | pthread_exit; pthread_detach; |
| 46 | |
| 47 | pthread_getschedparam; pthread_setschedparam; |
| 48 | |
| 49 | pthread_attr_init; pthread_attr_destroy; |
| 50 | pthread_attr_getdetachstate; pthread_attr_setdetachstate; |
| 51 | pthread_attr_getschedparam; pthread_attr_setschedparam; |
| 52 | pthread_attr_getschedpolicy; pthread_attr_setschedpolicy; |
| 53 | pthread_attr_getinheritsched; pthread_attr_setinheritsched; |
| 54 | pthread_attr_getscope; pthread_attr_setscope; |
| 55 | |
| 56 | pthread_mutex_init; pthread_mutex_destroy; |
| 57 | pthread_mutex_lock; pthread_mutex_trylock; pthread_mutex_unlock; |
| 58 | |
| 59 | pthread_mutexattr_init; pthread_mutexattr_destroy; |
| 60 | |
| 61 | pthread_cond_init; pthread_cond_destroy; |
| 62 | pthread_cond_wait; pthread_cond_timedwait; |
| 63 | pthread_cond_signal; pthread_cond_broadcast; |
| 64 | |
| 65 | pthread_condattr_destroy; pthread_condattr_init; |
| 66 | |
| 67 | pthread_cancel; pthread_testcancel; |
| 68 | pthread_setcancelstate; pthread_setcanceltype; |
| 69 | |
| 70 | pthread_sigmask; pthread_kill; |
| 71 | |
| 72 | pthread_key_create; pthread_key_delete; |
| 73 | pthread_getspecific; pthread_setspecific; |
| 74 | |
| 75 | pthread_once; |
| 76 | |
| 77 | pthread_atfork; |
| 78 | |
| 79 | flockfile; funlockfile; ftrylockfile; |
| 80 | |
| 81 | # Non-standard POSIX1.x functions. |
| 82 | pthread_mutexattr_getkind_np; pthread_mutexattr_setkind_np; |
| 83 | |
| 84 | # Protected names for functions used in other shared objects. |
| 85 | __pthread_mutex_init; __pthread_mutex_destroy; |
| 86 | __pthread_mutex_lock; __pthread_mutex_trylock; __pthread_mutex_unlock; |
| 87 | __pthread_mutexattr_init; __pthread_mutexattr_destroy; |
| 88 | __pthread_mutexattr_settype; |
| 89 | __pthread_key_create; __pthread_getspecific; __pthread_setspecific; |
| 90 | __pthread_once; __pthread_atfork; |
| 91 | _IO_flockfile; _IO_ftrylockfile; _IO_funlockfile; |
| 92 | |
| 93 | # Semaphores. |
| 94 | sem_destroy; sem_getvalue; sem_init; sem_post; sem_trywait; sem_wait; |
| 95 | |
| 96 | # Special fork handling. |
| 97 | fork; __fork; vfork; |
| 98 | |
| 99 | # Cancellation points. |
| 100 | close; __close; fcntl; __fcntl; read; __read; write; __write; accept; |
| 101 | connect; __connect; recv; recvfrom; recvmsg; send; __send; sendmsg; sendto; |
| 102 | fsync; lseek; __lseek; msync; nanosleep; open; __open; pause; tcdrain; |
| 103 | system; wait; __wait; waitpid; |
| 104 | |
| 105 | # Hidden entry point (through macros). |
| 106 | _pthread_cleanup_push; _pthread_cleanup_pop; |
| 107 | _pthread_cleanup_push_defer; _pthread_cleanup_pop_restore; |
| 108 | |
| 109 | pthread_kill_other_threads_np; |
| 110 | |
| 111 | # The error functions. |
| 112 | __errno_location; __h_errno_location; |
| 113 | |
| 114 | # Functions which previously have been overwritten. |
| 115 | sigwait; sigaction; __sigaction; _exit; _Exit; longjmp; siglongjmp; |
| 116 | raise; |
| 117 | } |
| 118 | |
| 119 | GLIBC_2.1 { |
| 120 | pthread_create; |
| 121 | pthread_attr_init; |
| 122 | |
| 123 | pthread_attr_getguardsize; pthread_attr_setguardsize; |
| 124 | pthread_attr_getstackaddr; pthread_attr_setstackaddr; |
| 125 | pthread_attr_getstacksize; pthread_attr_setstacksize; |
| 126 | |
| 127 | pthread_mutexattr_gettype; pthread_mutexattr_settype; |
| 128 | |
| 129 | pthread_rwlock_init; pthread_rwlock_destroy; |
| 130 | pthread_rwlock_rdlock; pthread_rwlock_wrlock; pthread_rwlock_unlock; |
| 131 | pthread_rwlock_tryrdlock; pthread_rwlock_trywrlock; |
| 132 | |
| 133 | pthread_rwlockattr_init; pthread_rwlockattr_destroy; |
| 134 | pthread_rwlockattr_getpshared; pthread_rwlockattr_setpshared; |
| 135 | pthread_rwlockattr_getkind_np; pthread_rwlockattr_setkind_np; |
| 136 | |
| 137 | pthread_getconcurrency; pthread_setconcurrency; |
| 138 | |
| 139 | # Semaphores. |
| 140 | sem_destroy; sem_getvalue; sem_init; sem_post; sem_trywait; sem_wait; |
| 141 | |
| 142 | __libc_current_sigrtmin; __libc_current_sigrtmax; |
| 143 | __libc_allocate_rtsig; |
| 144 | } |
| 145 | |
| 146 | GLIBC_2.1.1 { |
| 147 | sem_close; sem_open; sem_unlink; |
| 148 | } |
| 149 | |
| 150 | GLIBC_2.1.2 { |
| 151 | __vfork; |
| 152 | } |
| 153 | |
| 154 | GLIBC_2.2 { |
| 155 | pthread_mutexattr_getpshared; pthread_mutexattr_setpshared; |
| 156 | |
| 157 | pthread_condattr_getpshared; pthread_condattr_setpshared; |
| 158 | |
| 159 | # New functions from IEEE Std. 1003.1-2001. |
| 160 | pthread_mutex_timedlock; |
| 161 | |
| 162 | pthread_rwlock_timedrdlock; pthread_rwlock_timedwrlock; |
| 163 | |
| 164 | pthread_attr_getstack; pthread_attr_setstack; |
| 165 | |
| 166 | pthread_spin_destroy; pthread_spin_init; pthread_spin_lock; |
| 167 | pthread_spin_trylock; pthread_spin_unlock; |
| 168 | |
| 169 | pthread_barrier_init; pthread_barrier_destroy; pthread_barrier_wait; |
| 170 | pthread_barrierattr_destroy; pthread_barrierattr_init; |
| 171 | pthread_barrierattr_setpshared; |
| 172 | |
| 173 | sem_timedwait; |
| 174 | |
| 175 | pthread_yield; |
| 176 | |
| 177 | pthread_getcpuclockid; |
| 178 | |
| 179 | # Cancellation points. |
| 180 | lseek64; open64; __open64; pread; pread64; __pread64; pwrite; pwrite64; |
| 181 | __pwrite64; |
| 182 | |
| 183 | # Names used internally. |
| 184 | __pthread_rwlock_init; __pthread_rwlock_destroy; |
| 185 | __pthread_rwlock_rdlock; __pthread_rwlock_tryrdlock; |
| 186 | __pthread_rwlock_wrlock; __pthread_rwlock_trywrlock; |
| 187 | __pthread_rwlock_unlock; |
| 188 | |
| 189 | __res_state; |
| 190 | } |
| 191 | |
| 192 | GLIBC_2.2.3 { |
| 193 | # Extensions. |
| 194 | pthread_getattr_np; |
| 195 | } |
| 196 | |
| 197 | GLIBC_2.2.6 { |
| 198 | # Cancellation wrapper |
| 199 | __nanosleep; |
| 200 | } |
| 201 | |
| 202 | GLIBC_2.3.2 { |
| 203 | # Changed pthread_cond_t. |
| 204 | pthread_cond_init; pthread_cond_destroy; |
| 205 | pthread_cond_wait; pthread_cond_timedwait; |
| 206 | pthread_cond_signal; pthread_cond_broadcast; |
| 207 | } |
| 208 | |
| 209 | GLIBC_2.3.3 { |
| 210 | # 1003.1-2001 function accidentally left out in 2.2. |
| 211 | pthread_barrierattr_getpshared; |
| 212 | |
| 213 | # Unix CS option. |
| 214 | pthread_condattr_getclock; pthread_condattr_setclock; |
| 215 | |
| 216 | # Proposed API extensions. |
| 217 | pthread_tryjoin_np; pthread_timedjoin_np; |
| 218 | |
| 219 | # New cancellation cleanup handling. |
| 220 | __pthread_register_cancel; __pthread_unregister_cancel; |
| 221 | __pthread_register_cancel_defer; __pthread_unregister_cancel_restore; |
| 222 | __pthread_unwind_next; |
| 223 | __pthread_cleanup_routine; |
| 224 | |
| 225 | # affinity interfaces without size parameter |
| 226 | pthread_getaffinity_np; pthread_setaffinity_np; |
| 227 | pthread_attr_getaffinity_np; pthread_attr_setaffinity_np; |
| 228 | } |
| 229 | |
| 230 | GLIBC_2.3.4 { |
| 231 | # New affinity interfaces. |
| 232 | pthread_getaffinity_np; pthread_setaffinity_np; |
| 233 | pthread_attr_getaffinity_np; pthread_attr_setaffinity_np; |
| 234 | |
| 235 | pthread_setschedprio; |
| 236 | } |
| 237 | |
| 238 | GLIBC_2.4 { |
| 239 | pthread_mutexattr_getrobust_np; pthread_mutexattr_setrobust_np; |
| 240 | pthread_mutex_consistent_np; |
| 241 | pthread_mutexattr_getprotocol; pthread_mutexattr_setprotocol; |
| 242 | pthread_mutexattr_getprioceiling; pthread_mutexattr_setprioceiling; |
| 243 | pthread_mutex_getprioceiling; pthread_mutex_setprioceiling; |
| 244 | }; |
| 245 | |
| 246 | GLIBC_2.11 { |
| 247 | pthread_sigqueue; |
| 248 | }; |
| 249 | |
| 250 | GLIBC_2.12 { |
| 251 | pthread_mutex_consistent; pthread_mutexattr_getrobust; |
| 252 | pthread_mutexattr_setrobust; |
| 253 | |
| 254 | pthread_setname_np; pthread_getname_np; |
| 255 | }; |
| 256 | |
| 257 | GLIBC_2.18 { |
| 258 | pthread_getattr_default_np; |
| 259 | pthread_setattr_default_np; |
| 260 | } |
| 261 | |
| 262 | GLIBC_2.20 { |
| 263 | } |
| 264 | |
| 265 | GLIBC_2.22 { |
| 266 | } |
| 267 | |
| 268 | GLIBC_PRIVATE { |
| 269 | __pthread_initialize_minimal; |
| 270 | __pthread_clock_gettime; __pthread_clock_settime; |
| 271 | __pthread_unwind; __pthread_get_minstack; |
| 272 | __pthread_barrier_init; __pthread_barrier_wait; |
| 273 | __shm_directory; |
| 274 | } |
| 275 | } |