diff options
author | Werner Koch <wk@gnupg.org> | 2006-10-19 10:34:46 +0000 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2006-10-19 10:34:46 +0000 |
commit | af772435207ecb41dd6855e2d3078ed3c2991a3e (patch) | |
tree | ebbb4f49c83ad23614536355ea8d70cd67ed967f /src/secmem.c | |
parent | 7b99fd7c97e11524f8eb1c9b158cf791f5a44caf (diff) | |
download | libgcrypt-af772435207ecb41dd6855e2d3078ed3c2991a3e.tar.gz |
Let secmem init return an error if the memeory could not be locked.
Diffstat (limited to 'src/secmem.c')
-rw-r--r-- | src/secmem.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/secmem.c b/src/secmem.c index 6fa07a56..8afa86e0 100644 --- a/src/secmem.c +++ b/src/secmem.c @@ -75,6 +75,7 @@ static volatile int pool_is_mmapped; /* FIXME? */ static int disable_secmem; static int show_warning; +static int not_locked; static int no_warning; static int suspend_warning; @@ -246,6 +247,7 @@ lock_pool (void *p, size_t n) ) log_error ("can't lock memory: %s\n", strerror (err)); show_warning = 1; + not_locked = 1; } #elif defined(HAVE_MLOCK) @@ -299,6 +301,7 @@ lock_pool (void *p, size_t n) ) log_error ("can't lock memory: %s\n", strerror (err)); show_warning = 1; + not_locked = 1; } #elif defined ( __QNX__ ) @@ -417,6 +420,7 @@ _gcry_secmem_get_flags (void) flags = no_warning ? GCRY_SECMEM_FLAG_NO_WARNING : 0; flags |= suspend_warning ? GCRY_SECMEM_FLAG_SUSPEND_WARNING : 0; + flags |= not_locked ? GCRY_SECMEM_FLAG_NOT_LOCKED : 0; SECMEM_UNLOCK; |