diff options
author | Nick Mathewson <nickm@torproject.org> | 2019-04-03 10:57:06 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2019-04-04 12:56:52 -0400 |
commit | 76912bf140ec61856c0bb0d25354283d024229f5 (patch) | |
tree | 7cc9b92ec6f4a041a2d9385bc263a929dcf273c4 /src/lib/malloc | |
parent | 8c06f02c94067d7ad1bf39982e7238b7fafae0e0 (diff) | |
download | tor-76912bf140ec61856c0bb0d25354283d024229f5.tar.gz tor-76912bf140ec61856c0bb0d25354283d024229f5.zip |
Use an enum for inherit_result_out.
Diffstat (limited to 'src/lib/malloc')
-rw-r--r-- | src/lib/malloc/map_anon.c | 7 | ||||
-rw-r--r-- | src/lib/malloc/map_anon.h | 22 |
2 files changed, 16 insertions, 13 deletions
diff --git a/src/lib/malloc/map_anon.c b/src/lib/malloc/map_anon.c index 3e1c22648d..f4fda00bff 100644 --- a/src/lib/malloc/map_anon.c +++ b/src/lib/malloc/map_anon.c @@ -118,7 +118,7 @@ nodump_mem(void *mem, size_t sz) * *<b>inherit_result_out</b>. */ static int -noinherit_mem(void *mem, size_t sz, unsigned *inherit_result_out) +noinherit_mem(void *mem, size_t sz, inherit_res_t *inherit_result_out) { #ifdef FLAG_ZERO int r = MINHERIT(mem, sz, FLAG_ZERO); @@ -163,10 +163,11 @@ noinherit_mem(void *mem, size_t sz, unsigned *inherit_result_out) * anonymity that Tor is trying to provide.] */ void * -tor_mmap_anonymous(size_t sz, unsigned flags, unsigned *inherit_result_out) +tor_mmap_anonymous(size_t sz, unsigned flags, + inherit_res_t *inherit_result_out) { void *ptr; - unsigned itmp=0; + inherit_res_t itmp=0; if (inherit_result_out == NULL) { inherit_result_out = &itmp; } diff --git a/src/lib/malloc/map_anon.h b/src/lib/malloc/map_anon.h index f101654eb8..6c02cd6c16 100644 --- a/src/lib/malloc/map_anon.h +++ b/src/lib/malloc/map_anon.h @@ -31,15 +31,17 @@ */ #define ANONMAP_NOINHERIT (1u<<1) -/** Possible value for inherit_result_out: the memory will be kept - * by any child process. */ -#define INHERIT_RES_KEEP 0 -/** Possible value for inherit_result_out: the memory will be dropped in - * the child process. Attempting to access it will likely cause a segfault. */ -#define INHERIT_RES_DROP 1 -/** Possible value for inherit_result_out: the memory will be cleared in - * the child process. */ -#define INHERIT_RES_ZERO 2 +typedef enum { + /** Possible value for inherit_result_out: the memory will be kept + * by any child process. */ + INHERIT_RES_KEEP=0, + /** Possible value for inherit_result_out: the memory will be dropped in the + * child process. Attempting to access it will likely cause a segfault. */ + INHERIT_RES_DROP, + /** Possible value for inherit_result_out: the memory will be cleared in + * the child process. */ + INHERIT_RES_ZERO +} inherit_res_t; /* Here we define the NOINHERIT_CAN_FAIL macro if and only if * it's possible that ANONMAP_NOINHERIT might yield inheritable memory. @@ -63,7 +65,7 @@ #endif void *tor_mmap_anonymous(size_t sz, unsigned flags, - unsigned *inherit_result_out); + inherit_res_t *inherit_result_out); void tor_munmap_anonymous(void *mapping, size_t sz); #endif /* !defined(TOR_MAP_ANON_H) */ |