Loading...
--- Libc/Libc-1158.20.4/stdlib/FreeBSD/setenv.c
+++ Libc/Libc-1669.40.2/stdlib/FreeBSD/setenv.c
@@ -41,16 +41,15 @@
#include <sys/types.h>
#include <fcntl.h>
+#include "libc_private.h"
+
struct owned_ptr;
-__private_extern__ char *__findenv_locked(const char *, int *, char **);
-__private_extern__ int __setenv_locked(const char *, const char *, int, int, char ***, struct owned_ptr *);
-__private_extern__ void __unsetenv_locked(const char *, char **, struct owned_ptr *);
-
-__private_extern__ void __environ_lock(void);
-__private_extern__ void __environ_unlock(void);
-
-__private_extern__ struct owned_ptr *__env_owned;
-__private_extern__ int __init__env_owned_locked(int);
+extern char *__findenv_locked(const char *, int *, char **);
+extern int __setenv_locked(const char *, const char *, int, int, char ***, struct owned_ptr *);
+extern void __unsetenv_locked(const char *, char **, struct owned_ptr *);
+
+extern struct owned_ptr *__env_owned;
+extern int __init__env_owned_locked(int);
/*
* _cthread_init_routine used to be called from crt1.o to initialize threads.
@@ -232,12 +231,8 @@
* -1 - like 0, except we copy of the name=value string in name
*/
__private_extern__ int
-__setenv_locked(name, value, rewrite, copy, environp, owned)
- const char *name;
- const char *value;
- int rewrite, copy;
- char ***environp;
- struct owned_ptr *owned;
+__setenv_locked(const char *name, const char *value, int rewrite, int copy,
+ char ***environp, struct owned_ptr *owned)
{
char *c;
int offset;
@@ -410,14 +405,14 @@
int
_setenvp(const char *name, const char *value, int rewrite, char ***envp, void *state)
{
- __environ_lock();
+ environ_lock_np();
if (__init__env_owned_locked(1)) {
- __environ_unlock();
+ environ_unlock_np();
return (-1);
}
int ret = __setenv_locked(name, value, rewrite, 1, envp,
(state ? (struct owned_ptr *)state : __env_owned));
- __environ_unlock();
+ environ_unlock_np();
return ret;
}
@@ -430,13 +425,13 @@
int
_unsetenvp(const char *name, char ***envp, void *state)
{
- __environ_lock();
+ environ_lock_np();
if (__init__env_owned_locked(1)) {
- __environ_unlock();
+ environ_unlock_np();
return (-1);
}
__unsetenv_locked(name, *envp, (state ? (struct owned_ptr *)state : __env_owned));
- __environ_unlock();
+ environ_unlock_np();
return 0;
}
@@ -448,10 +443,7 @@
* "value". If rewrite is set, replace any current value.
*/
int
-setenv(name, value, rewrite)
- const char *name;
- const char *value;
- int rewrite;
+setenv(const char *name, const char *value, int rewrite)
{
int ret;
@@ -469,16 +461,16 @@
}
#endif /* __DARWIN_UNIX03 */
- __environ_lock();
+ environ_lock_np();
if (__init__env_owned_locked(1)) {
- __environ_unlock();
+ environ_unlock_np();
return (-1);
}
ret = __setenv_locked(name, value, rewrite, 1, _NSGetEnviron(), __env_owned);
#ifdef LEGACY_CRT1_ENVIRON
_saved_environ = *_NSGetEnviron();
#endif /* !LEGACY_CRT1_ENVIRON */
- __environ_unlock();
+ environ_unlock_np();
return ret;
}
@@ -486,13 +478,13 @@
static inline __attribute__((always_inline)) int
_unsetenv(const char *name, int should_set_errno)
{
- __environ_lock();
+ environ_lock_np();
if (__init__env_owned_locked(should_set_errno)) {
- __environ_unlock();
+ environ_unlock_np();
return (-1);
}
__unsetenv_locked(name, *_NSGetEnviron(), __env_owned);
- __environ_unlock();
+ environ_unlock_np();
return 0;
}