#include <unistd.h>
int errno;
-static int at_exit_registered;
-#define REGISTER_AT_EXIT() \
- do { \
- if (!at_exit_registered) \
- at_exit_registered = !atexit(cleanup_libc); \
- } while(0)
-
#define MAXENV 32
static char *envnames[MAXENV];
static char *envvars[MAXENV];
+static void cleanup_libc(void) __attribute__((destructor));
static void cleanup_libc(void)
{
int i;
}
char *
-getenv(char *name)
+getenv(const char *name)
{
int i;
- REGISTER_AT_EXIT();
for (i=0; i < MAXENV; i++) {
if (envnames[i] && !strcmp(envnames[i], name))
return envvars[i];
{
int i;
char *val;
- REGISTER_AT_EXIT();
for (i=0; i < MAXENV; i++) {
if (envnames[i] && !strcmp(envnames[i], name)) {
if (overwrite) {
return &localedata;
}
-void
-alarm(void)
+unsigned int
+alarm(unsigned int seconds)
{
}