diff options
Diffstat (limited to 'src/cerberus.c')
| -rw-r--r-- | src/cerberus.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/cerberus.c b/src/cerberus.c index a5304a7..c22690e 100644 --- a/src/cerberus.c +++ b/src/cerberus.c @@ -460,6 +460,9 @@ void do_login(int argc, char** argv) #if AUTH > 0 +/** + * Called before the process exits, to do cleanup + */ void preexit(void) { if (skip_auth == 0) @@ -492,7 +495,9 @@ char* read_passphrase(void) #endif +#ifdef __GNUC__ # pragma GCC optimize "-O0" +#endif /** @@ -512,7 +517,10 @@ void destroy_passphrase(void) /** * Wipe the passphrase when the program exits */ -static __attribute__((destructor)) void passphrase_destructor(void) +#ifdef __GNUC__ +__attribute__((destructor)) +#endif +static void passphrase_destructor(void) { destroy_passphrase(); } |
