diff options
author | Werner Koch <wk@gnupg.org> | 2017-11-28 15:39:56 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2017-11-28 15:54:59 +0100 |
commit | 4a2538e69dd35377bce0fb584f72322c69a111b3 (patch) | |
tree | 97123f5455bbde9057cf06aab2d95bd1e573ce1e /src/visibility.c | |
parent | 241e9a73891fcd12f124aab1a299c2cf4f8eebc4 (diff) | |
download | libgpg-error-4a2538e69dd35377bce0fb584f72322c69a111b3.tar.gz |
core: New API functions gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd.
* src/gpg-error.h.in (gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd): New.
* src/visibility.c, src/visibility.h: Add wrappers.
* src/gpg-error.vers, src/gpg-error.def.in: Add them.
* src/sysutils.c (modestr_to_mode): New.
(_gpgrt_mkdir, _gpgrt_chdir, _gpgrt_getcwd): New.
* m4/gnupg-misc.m4: New.
* m4/Makefile.am (EXTRA_DIST): Add new M4 file.
* configure.ac: Call new GNUPG_FUNC_MKDIR_TAKES_ONE_ARG.
(AC_CHECK_FUNCS): Add stat.
--
The code has been taken from GnuPG. _gpgrt_mkdir was originally
written by me as gnupg_mkdir and here relicensed to LGPLv2.1+.
_gpgrt_getcwd was originally written by in 2007 and also here
relicensed to LGPLv2.1. The new M4 macro was also written by me for
use in in GnuPG; it has been taken from GnUPG's acinclude.m4, moved to
its own file here, and relicensed to FSFULLR.
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'src/visibility.c')
-rw-r--r-- | src/visibility.c | 141 |
1 files changed, 81 insertions, 60 deletions
diff --git a/src/visibility.c b/src/visibility.c index 45ac644..c0cab3d 100644 --- a/src/visibility.c +++ b/src/visibility.c @@ -504,66 +504,6 @@ gpgrt_read_line (estream_t stream, max_length); } -void * -gpgrt_realloc (void *a, size_t n) -{ - return _gpgrt_realloc (a, n); -} - -void * -gpgrt_malloc (size_t n) -{ - return _gpgrt_malloc (n); -} - -void * -gpgrt_calloc (size_t n, size_t m) -{ - return _gpgrt_calloc (n, m); -} - -char * -gpgrt_strdup (const char *string) -{ - return _gpgrt_strdup (string); -} - -char * -gpgrt_strconcat (const char *s1, ...) -{ - va_list arg_ptr; - char *result; - - if (!s1) - result = _gpgrt_strdup (""); - else - { - va_start (arg_ptr, s1); - result = _gpgrt_strconcat_core (s1, arg_ptr); - va_end (arg_ptr); - } - return result; -} - -void -gpgrt_free (void *a) -{ - if (a) - _gpgrt_free (a); -} - -char * -gpgrt_getenv (const char *name) -{ - return _gpgrt_getenv (name); -} - -int -gpgrt_setenv (const char *name, const char *value, int overwrite) -{ - return _gpgrt_setenv (name, value, overwrite); -} - int gpgrt_vfprintf (estream_t _GPGRT__RESTRICT stream, const char *_GPGRT__RESTRICT format, @@ -769,6 +709,85 @@ gpgrt_vsnprintf (char *buf, size_t bufsize, +void * +gpgrt_realloc (void *a, size_t n) +{ + return _gpgrt_realloc (a, n); +} + +void * +gpgrt_malloc (size_t n) +{ + return _gpgrt_malloc (n); +} + +void * +gpgrt_calloc (size_t n, size_t m) +{ + return _gpgrt_calloc (n, m); +} + +char * +gpgrt_strdup (const char *string) +{ + return _gpgrt_strdup (string); +} + +char * +gpgrt_strconcat (const char *s1, ...) +{ + va_list arg_ptr; + char *result; + + if (!s1) + result = _gpgrt_strdup (""); + else + { + va_start (arg_ptr, s1); + result = _gpgrt_strconcat_core (s1, arg_ptr); + va_end (arg_ptr); + } + return result; +} + +void +gpgrt_free (void *a) +{ + if (a) + _gpgrt_free (a); +} + +char * +gpgrt_getenv (const char *name) +{ + return _gpgrt_getenv (name); +} + +int +gpgrt_setenv (const char *name, const char *value, int overwrite) +{ + return _gpgrt_setenv (name, value, overwrite); +} + +int +gpgrt_mkdir (const char *name, const char *modestr) +{ + return _gpgrt_mkdir (name, modestr); +} + +int +gpgrt_chdir (const char *name) +{ + return _gpgrt_chdir (name); +} + +char *gpgrt_getcwd (void) +{ + return _gpgrt_getcwd (); +} + + + gpgrt_b64state_t gpgrt_b64dec_start (const char *title) { @@ -990,6 +1009,8 @@ _gpgrt_log_assert (const char *expr, const char *file, + + /* For consistency reasons we use function wrappers also for Windows * specific function despite that they are technically not needed. */ |