ctype: make sure c < 127 in isprint(c)
[neatlibc.git] / stdlib.c
blob1413bd4cb28182b4093be6691372fb38ffcf2338
1 #include <stdlib.h>
2 #include <string.h>
3 #include <sys/types.h>
4 #include <sys/wait.h>
6 char **environ;
8 void exit(int status)
10 _exit(status);
13 int abs(int n)
15 return n >= 0 ? n : -n;
18 long labs(long n)
20 return n >= 0 ? n : -n;
23 char *getenv(char *name)
25 char **p = environ;
26 int len = strlen(name);
27 for (; *p; p++)
28 if (!memcmp(name, *p, len) && (*p)[len] == '=')
29 return *p + len + 1;
30 return NULL;
33 int system(char *cmd)
35 char *argv[] = {"/bin/sh", "-c", cmd, NULL};
36 pid_t pid;
37 int ret;
38 pid = fork();
39 if (pid < 0)
40 return -1;
41 if (!pid) {
42 execv(argv[0], argv);
43 exit(1);
45 if (waitpid(pid, &ret, 0) != pid)
46 return -1;
47 return ret;