diff options
author | dwmalone <dwmalone@FreeBSD.org> | 2002-01-24 12:11:31 +0000 |
---|---|---|
committer | dwmalone <dwmalone@FreeBSD.org> | 2002-01-24 12:11:31 +0000 |
commit | 33776f88dc7a21766cda77b39d94c1b57a18ddc2 (patch) | |
tree | b31855c8a65a23be32e28129e6ef6b841a1500fe | |
parent | 3d5a7ba605c55d5a349fd48ea3ce463a951502fc (diff) | |
download | FreeBSD-src-33776f88dc7a21766cda77b39d94c1b57a18ddc2.zip FreeBSD-src-33776f88dc7a21766cda77b39d94c1b57a18ddc2.tar.gz |
Change brk's prototype from char *brk(const char *) to int brk(const void *)
and sbrk's prototype from char *sbrk(int) to void *sbrk(intptr_t).
This makes us more consistant with NetBSD and standards which include
these functions. Bruce pointed out that ptrdiff_t would probably
have been better than intptr_t, but this doesn't match other
implimentations.
Also remove local declarations of sbrk and unnecessary casting.
PR: 32296
Tested by: Harti Brandt <brandt@fokus.gmd.de>
MFC after: 1 month
-rw-r--r-- | include/unistd.h | 4 | ||||
-rw-r--r-- | lib/libc/sys/brk.2 | 22 | ||||
-rw-r--r-- | libexec/rtld-aout/rtld.c | 2 | ||||
-rw-r--r-- | libexec/rtld-elf/malloc.c | 1 |
4 files changed, 10 insertions, 19 deletions
diff --git a/include/unistd.h b/include/unistd.h index 37dab67..56e9de3 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -118,7 +118,7 @@ struct timeval; /* select(2) */ #endif int acct __P((const char *)); int async_daemon __P((void)); -char *brk __P((const char *)); +int brk __P((const void *)); int chroot __P((const char *)); size_t confstr __P((int, char *, size_t)); char *crypt __P((const char *, const char *)); @@ -187,7 +187,7 @@ pid_t rfork_thread __P((int, void *, int (*)(void *), void *)); int rresvport __P((int *)); int rresvport_af __P((int *, int)); int ruserok __P((const char *, int, const char *, const char *)); -char *sbrk __P((int)); +void *sbrk __P((intptr_t)); int select __P((int, fd_set *, fd_set *, fd_set *, struct timeval *)); int setdomainname __P((const char *, int)); int setegid __P((gid_t)); diff --git a/lib/libc/sys/brk.2 b/lib/libc/sys/brk.2 index ac3a8d8..2683fb4 100644 --- a/lib/libc/sys/brk.2 +++ b/lib/libc/sys/brk.2 @@ -42,11 +42,12 @@ .Sh LIBRARY .Lb libc .Sh SYNOPSIS +.In sys/types.h .In unistd.h -.Ft char * -.Fn brk "const char *addr" -.Ft char * -.Fn sbrk "int incr" +.Ft int +.Fn brk "const void *addr" +.Ft void * +.Fn sbrk "intptr_t incr" .Sh DESCRIPTION .Bf -symbolic The @@ -116,22 +117,13 @@ value is returned from a call to for the definition of .Va etext ) . .Sh RETURN VALUES -The -.Fn brk -function returns -.Po Vt "char *" Pc Ns 0 -if successful; -otherwise the value -.Po Vt "char *" Pc Ns \-1 -is returned and the global variable -.Va errno -is set to indicate the error. +.Rv -std brk .Pp The .Fn sbrk function returns the prior break value if successful; otherwise the value -.Po Vt "char *" Pc Ns \-1 +.Po Vt "void *" Pc Ns \-1 is returned and the global variable .Va errno is set to indicate the error. diff --git a/libexec/rtld-aout/rtld.c b/libexec/rtld-aout/rtld.c index 7f0908b..6769fa1 100644 --- a/libexec/rtld-aout/rtld.c +++ b/libexec/rtld-aout/rtld.c @@ -2518,7 +2518,7 @@ malloc(size) newbrk = (char *) roundup2((unsigned long)rtld_alloc_lev, PAGSIZ); - if (brk(newbrk) == (char *)-1) + if (brk(newbrk) == -1) return NULL; } diff --git a/libexec/rtld-elf/malloc.c b/libexec/rtld-elf/malloc.c index cb00a20..1e0664c 100644 --- a/libexec/rtld-elf/malloc.c +++ b/libexec/rtld-elf/malloc.c @@ -119,7 +119,6 @@ union overhead { */ #define NBUCKETS 30 static union overhead *nextf[NBUCKETS]; -extern char *sbrk(); static int pagesz; /* page size */ static int pagebucket; /* page size bucket */ |