summaryrefslogtreecommitdiff
path: root/gpgscm
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2017-11-28 16:36:12 +0100
committerWerner Koch <wk@gnupg.org>2017-11-28 16:36:12 +0100
commit513415c71781ab400ebb01f6b4cf2984ec6b1757 (patch)
tree6f9cb0358004276c092d97423c615428579fdef1 /gpgscm
parent930d27ba6b1205395add0c79139e62355a1d5b62 (diff)
downloadlibgpg-error-513415c71781ab400ebb01f6b4cf2984ec6b1757.tar.gz
core: Change new functions to return gpg_err_code_t.
* src/gpg-error.h.in (gpgrt_sentenv, gpgrt_mkdir, gpgrt_chdir): Change return type to gpg_err_code_t. * src/sysutils.c (_gpgrt_setenv): Implement that. (_gpgrt_mkdir): Ditto. (_gpgrt_chdir): Ditto. * gpgscm/ffi.c (do_setenv, do_mkdir): Adjust for this change. -- The functions are already a bit different and thus it is useful to let them return a gpg-error style error code and don't let the user implement that for each call. Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'gpgscm')
-rw-r--r--gpgscm/ffi.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/gpgscm/ffi.c b/gpgscm/ffi.c
index 51de63f..2f3e2f7 100644
--- a/gpgscm/ffi.c
+++ b/gpgscm/ffi.c
@@ -243,6 +243,7 @@ static pointer
do_setenv (scheme *sc, pointer args)
{
FFI_PROLOG ();
+ gpg_err_code_t ec;
char *name;
char *value;
int overwrite;
@@ -250,8 +251,8 @@ do_setenv (scheme *sc, pointer args)
FFI_ARG_OR_RETURN (sc, char *, value, string, args);
FFI_ARG_OR_RETURN (sc, int, overwrite, bool, args);
FFI_ARGS_DONE_OR_RETURN (sc, args);
- if (gpgrt_setenv (name, value, overwrite))
- FFI_RETURN_ERR (sc, gpg_error_from_syserror ());
+ if ((ec = gpgrt_setenv (name, value, overwrite)))
+ FFI_RETURN_ERR (sc, ec);
FFI_RETURN (sc);
}
@@ -490,13 +491,15 @@ static pointer
do_mkdir (scheme *sc, pointer args)
{
FFI_PROLOG ();
+ gpg_err_code_t ec;
char *name;
char *mode;
FFI_ARG_OR_RETURN (sc, char *, name, string, args);
FFI_ARG_OR_RETURN (sc, char *, mode, string, args);
FFI_ARGS_DONE_OR_RETURN (sc, args);
- if (gpgrt_mkdir (name, mode) == -1)
- FFI_RETURN_ERR (sc, gpg_error_from_syserror ());
+ ec = gpgrt_mkdir (name, mode);
+ if (ec)
+ FFI_RETURN_ERR (sc, ec);
FFI_RETURN (sc);
}