aboutsummaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Changed LDAP error strings.Werner Koch2015-04-101-78/+78
| | | | --
* w32: Remove compiler warnings.Werner Koch2015-04-102-81/+15
| | | | | | | | | | | | | | * src/Makefile.am (pre_mkheader_cmds): Avoid make diagnostic about failed but ignored command. This confuses Emacs' compiler job parser. * tests/t-lock.c [W32]: Include time.h. * src/init.c: Reorganize Windows only code. (wchar_to_utf8, utf8_to_wchar): Remove unused functions. (_gpg_err_set_errno): Use only one copy for all platforms. -- Note that there is a still a problem for W64 pertaining to the use of an int to store a HANDLE. This will be fixed when we add a full abstraction layer for Windows file objects.
* Use assert to print diagnosicts before calling abort.Werner Koch2015-03-241-4/+17
| | | | | | * src/posix-lock.c: Add assert calls. Signed-off-by: Werner Koch <[email protected]>
* Avoid breakage with gcc 5Daniel Kahn Gillmor2015-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * src/Makefile.am: Add -P to the C preprocessor when building mkerrcodes.h, to avoid a noisy intermediate pipeline. -- With gcc 5 without this patch, we see many errors like the following: gcc -I. -I. -o mkerrcodes ./mkerrcodes.c In file included from ./mkerrcodes.c:26:0: ./mkerrcodes.h:9:5: error: expected expression before ‘,’ token { , "GPG_ERR_E2BIG" }, ^ ./mkerrcodes.h:10:5: error: expected expression before ‘,’ token { , "GPG_ERR_EACCES" }, ^ This patch cleans up the generated mkerrcodes.h by making the intermediate stage clean for all the versions of gcc i tested (4.x and 5). Debian-Bug-Id: 777374 Signed-Off-By: Daniel Kahn Gillmor <[email protected]>
* Add option --defines to gpg-error.Werner Koch2015-03-191-17/+75
| | | | | | * src/gpg-error.c (main): Add option --help and --defines. Signed-off-by: Werner Koch <[email protected]>
* Add GPG_ERR_LDAP_* error codes.Werner Koch2015-03-191-2/+103
| | | | | | | * src/err-codes.h.in: Add error codes. * doc/ldap2gpgerr.c: New. Signed-off-by: Werner Koch <[email protected]>
* Remove useless conditions.Werner Koch2015-03-162-7/+4
| | | | | | | | * src/estream.c (fname_set_internal): Remove useless condition. * src/mkheader.c (main): Ditto. -- Detected by Stack 0.3.
* Add host-triplet aliasing feature to mkheader.Werner Koch2015-03-063-7/+48
| | | | | | | | | | | | | | * src/Makefile.am (lock_obj_pub): Rename i586-pc-linux-gnu to i686-pc-linux-gnu. Remove i486-pc-linux-gnu. * src/mkheader.c (canon_host_triplet): New. (main): Use it. -- config.sub does not map i{4,5,6}86-pc-linux-gnu to one common triplet. However, they all use the same ABI and thus we do not need several versions of the syscfg files. Signed-off-by: Werner Koch <[email protected]>
* w32: Add a manifest to libgpg-error.Werner Koch2015-03-063-1/+21
| | | | | | | | | | | * src/gpg-error.w32-manifest.in: New. * src/Makefile.am (EXTRA_DIST): Add it. (versioninfo.lo): Depend on it. * src/versioninfo.rc.in: Add it. * configure.ac (AC_CONFIG_FILES): Add it. (BUILD_VERSION): New. Signed-off-by: Werner Koch <[email protected]>
* w32: Use -static-libgcc to avoid linking to libgcc_s_sjlj-1.dll.Werner Koch2015-01-301-1/+9
| | | | | | | | | | | | | | | | | * src/Makefile.am (extra_ltoptions): New. (libgpg_error_la_LDFLAGS): Use it. -- Since gcc 4.8 there is a regression in that plain C programs may link to libgcc_s.a which has a dependency on libgcc_s_sjlj.dll. This is for example triggered by using long long arithmetic on a 32 bit Windows (e.g symbol __udivdi3). As usual the gcc maintainers don't care about backward compatibility and declare that as some kind of compatibility fix and not as regression from 4.7 and all earlier versions. Signed-off-by: Werner Koch <[email protected]>
* Update copyright notices.Werner Koch2015-01-262-2/+2
| | | | --
* Add GPG_ERR_LEGACY_KEY.Werner Koch2015-01-221-1/+2
|
* Avoid false warning about uninitialized var.Werner Koch2015-01-051-1/+1
| | | | * src/gpg-error.c (get_err_from_str): Init SAVED_CHAR.
* Add GPG_ERR_REQUEST_TOO_SHORT and GPG_ERR_REQUEST_TOO_LONG.Werner Koch2014-12-281-1/+3
|
* Add GPG_ERR_OBJ_TERM_STATE.Werner Koch2014-12-151-1/+2
|
* Add GPG_ERR_FORBIDDEN.Werner Koch2014-12-031-2/+1
|
* Add new lock-obj-pub for mips64el-unknown-linux-gnuabi64.Daniel Kahn Gillmor2014-10-252-0/+26
| | | | | | | | | | | | | | * src/syscfg/lock-obj-pub.mips64el-unknown-linux-gnuabi64.h: New. * src/Makefile.am (lock_obj_pub): Add. -- native lock obj header for 64-bit little-endian MIPS, taken from debian mips64el port buildd, see: http://mips64el.debian.net/debian/buildlog/libg/libgpg-error_1.16-2/libgpg-error_1.16-2_mips64el-20140928-1753.build Debian-Bug-Id: 766135
* add lock-obj header for or1k-unknown-linux-gnuDaniel Kahn Gillmor2014-10-232-1/+26
| | | | | | | | | | | * src/syscfg/lock-obj-pub.or1k-unknown-linux-gnu.h: new -- This architecture-specific header information was sourced from <http://wannabuild.cmd.nu/fetch.php?pkg=libgpg-error arch=or1k&ver=1.13-2&stamp=1407320768> * Add to Makefile. -wk
* add lock-obj for new arch triplet for x86Daniel Kahn Gillmor2014-10-231-0/+23
| | | | | | | | | | | | | | * src/sysconfig/lock-obj-pub.i586-pc-linux-gnu.h: New. -- Helmut Grohne writes: Observe that the detected GNU triplet is now i586-pc-linux-gnu (gcc bumped it from i486-pc-linux-gnu recently), so the corresponding lock obj header in the syscfg folder needs to be moved or linked. Debian-Bug-Id: 764881
* Fix to help building native on Windows.Werner Koch2014-10-151-3/+3
| | | | | | | | | | | | * configure.ac (FORCE_USE_SYSCFG): New am_conditional. * src/Makefile.am: Use new conditional to decide whether to build the native lock object header. -- This should help to build using msys2 and mingw. GnuPG-bug-id: 1717 Signed-off-by: Werner Koch <[email protected]>
* Change gpgrt_pending{,_unlocked} to macros.Werner Koch2014-10-037-21/+30
| | | | | | | | | | | | | | | | | | | | * src/gpg-error.h.in (gpgrt_pending): Change to a macro. (gpgrt_pending_unlocked): Change to a macro. (_gpgrt_pending, _gpgrt_pending_unlocked): New private functions. * src/visibility.c, src/visibility.h: Change accordingly. * src/gpg-error.vers, src/gpg-error.def.in: Ditto. * src/estream.c (_gpgrt_pending_unlocked): Rename to _gpgrt__pending_unlocked. (_gpgrt_pending): Rename to _gpgrt__pending. -- The function are supposed to be used with gprt_getc and thus we need to avoid the function call overhead. We may want to change them to inline functions, though. gpgrt_pending is changed to a macro with the idea that we eventually can export the samestream flags and thus avoid the function call overhead in the samethread case too.
* w32: Make it build again.Werner Koch2014-10-021-1/+1
| | | | * src/estream.c (es_func_w32_read): Fix var name.
* build: Support SYSROOT based config script finding.Werner Koch2014-10-021-7/+26
| | | | | | | * src/gpg-error.m4: Add support for SYSROOT and set gpg_config_script_warn. Use AC_PATH_PROG instead of AC_PATH_TOOL because the config script is not expected to be installed with a prefix for its name.
* Add GPG_ERR_BOGUS_STRING and an experimental gpgrt_pending.Werner Koch2014-10-028-5/+137
| | | | | | | | | * src/visibility.c (gpgrt_pending, gpgrt_pending_unlocked): New. * src/estream.c (_gpgrt_pending, _gpgrt_pending_unlocked): New. (check_pending): new. (check_pending_fbf, check_pending_nbf): New. (es_func_mem_read, es_func_fd_read, es_func_w32_read) (es_func_fp_read, es_fill): Take care of the special 0 value for SIZE.
* GNU calls little-endian powerpc64 powerpc64le, not powerpc64elDaniel Kahn Gillmor2014-09-292-1/+1
| | | | | | | | | | | | | | | | | * src/Makefile.am (lock_obj_pub): fix powerpc64el to powerpc64le * src/sysconfig/lock-obj-pub.powerpc64el-unknown-linux-gnu.h : move to src/sysconfig/lock-obj-pub.powerpc64le-unknown-linux-gnu.h -- 33e5504fbb5e5e2ff44023c0a22dfb668ff8b10f created lock-obj-pub for little-endian powerpc64, but misnamed the patch file as powerpc64el instead of powerpc64le. Sorry for the earlier mistake, this should correct it. See commentary from Helmut Grohne at https://bugs.debian.org/762322#34 Debian-bug-id: 762322
* Add error codes for use by a TLS library.Werner Koch2014-09-292-2/+29
|
* Add new error source GPG_ERR_SOURCE_TLS.Werner Koch2014-09-241-0/+2
|
* Add new lock-obj-pub for sparc64-unknown-linux-gnu.Daniel Kahn Gillmor2014-09-232-0/+26
| | | | | | | | | | | | | | | | * src/syscfg/lock-obj-pub.sparc64-unknown-linux-gnu.h: New. * src/Makefile.am (lock_obj_pub): Add. -- Helmut Grohne writes: Julien Cristau pointed out that sparc porter machines run 64bit kernels and can execute 64bit executables. So here we go. I crossed gen-posix-lock-obj for sparc64, verified that it is indeed a 64bit executable and attach its output. Debian-bug-id: 762322
* Add new lock-obj-pub for powerpc64el-unknown-linux-gnu.Daniel Kahn Gillmor2014-09-232-0/+26
| | | | | | | | | | | | * src/syscfg/lock-obj-pub.powerpc64el-unknown-linux-gnu.h: New. * src/Makefile.am (lock_obj_pub): Add. -- Here is a arch-specific lock-obj header file for little-endian 64-bit powerpc. Debian-bug-id: 762322
* doc updates and type fixes.Werner Koch2014-09-181-1/+1
| | | | --
* Add new lock-obj-pub for Apple iOS.Werner Koch2014-09-183-0/+56
| | | | | | | | | | | | | | | * src/syscfg/lock-obj-pub.aarch64-apple-darwin.h: New. * src/syscfg/lock-obj-pub.arm-apple-darwin.h: New. -- Created by Chris Ballinger <[email protected]>. He also noted: When cross-compiling for arm-apple-darwin and aarch64-apple-darwin I also needed to generate these files, so here they are. I made a little iOS utility to help people generate them in case Apple adds any more architectures in the future: https://github.com/chrisballinger/gen-posix-lock-obj-iOS
* Fix es_fclose for streams opened with "samethread".Werner Koch2014-09-121-2/+14
| | | | | * src/estream.c (destroy_stream_lock): New. (es_create, do_close): Use new wrapper function.
* Fix a prototypeWerner Koch2014-09-121-2/+2
| | | | * src/gpgrt-int.h: s/off_t/gpgrt_off_t/.
* Fix build problems with non-gmake (ie. AIX).Werner Koch2014-09-111-3/+4
| | | | | * src/Makefile.am: Do not distribute gpg-error.h. (lock-obj-pub.native.h): Prepend a "./" to match the dependency.
* Fix problems with ssize_t and off_t.Werner Koch2014-09-116-69/+226
| | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac (AC_SYS_LARGEFILE): New. (AC_CHECK_HEADERS): Check for stdint.h. (AC_CHECK_SIZEOF): Add for int, long and long long. (REPLACEMENT_FOR_OFF_T): New ac_define. * src/mkheader.c (have_stdint_h, have_w32_system, have_w64_system) (replacement_for_off_type, stdint_h_included): New. (xfree, xstrdup): New. (parse_config_h): New. (write_special): Support "define:gpgrt_off_t", "define:gpgrt_ssize_t", "api_ssize_t" tags. (main): Add config.h arg. Call parse_config_h. Fix substitute code. * src/Makefile.am (gpg-error.h): Pass config.h to mkheader. * src/gpg-error.h.in: Include definitions for gpgrt_ssize_t and gpgrt_off_t. Let mkheader insert ssize_t keywords. Chnage all off_t to gpgrt_off_t. * src/estream.c: Change all off_t to gpgrt_off_t. Chnage all ssize_t to gpgrt_ssize_t. * src/visibility.c (gpgrt_fseeko): Use gpgrt_off_t. (gpgrt_ftello): Ditto. (gpgrt_getline): Use gpgrt_ssize_t. (gpgrt_read_line): Ditto.
* Fix compiler warning for w32.Werner Koch2014-09-111-7/+7
| | | | | * src/syscfg/lock-obj-pub.mingw32.h (GPGRT_LOCK_INITIALIZER): Add mssing braces.
* Add gpgrt_set_alloc_func.Werner Koch2014-08-269-26/+102
| | | | | | | | | | | | | * src/visibility.c (gpgrt_set_alloc_func): New. * configure.ac (_ESTREAM_PRINTF_REALLOC): Define. (_ESTREAM_PRINTF_EXTRA_INCLUDE): Define. * src/estream.c (mem_alloc, mem_realloc, mem_free): Simplify. (_gpgrt_free): Remove. * src/init.c (custom_realloc): New var. (_gpgrt_set_alloc_func): New. (_gpgrt_realloc, _gpgrt_malloc, _gpgrt_free): New. * src/visibility.h (gpg_err_deinit): Mark as visible.
* Export missing init functions.Werner Koch2014-08-268-22/+53
| | | | | | | | | | | | | | | | | * src/gpg-error.h.in (gpgrt_init): New macro. (gpgrt_check_version): New prototype. * src/init.c (_gpg_err_init): Rename from gpg_err_init. (_gpg_err_deinit): Rename from gpg_err_deinit. * src/visibility.c (gpg_err_init): New. (gpg_err_deinit): New. (gpgrt_check_version): New. * src/gpg-error.vers (gpg_err_init, gpg_err_deinit): Add missing symbols. (gpgrt_check_version): New. * src/gpg-error.def.in (gpg_err_init, gpg_err_deinit): Add missing symbols. (gpgrt_check_version): New. * src/gpg-error.c (main): Use gpgrt_init macro.
* Include required headers into gpg-error.h.Werner Koch2014-08-261-0/+1
| | | | * src/gpg-error.h.in: Include stdarg.h.
* Replace locking code in estream functions.Werner Koch2014-08-2510-209/+251
| | | | | | | | | | | | | | | | | | | | | | | | | | | * src/posix-lock.c: Add weak program for pthread_mutex_trylock. (_gpgrt_lock_trylock): New. * src/w32-lock.c (_gpgrt_lock_init): Add missing return statement. (_gpgrt_lock_trylock): New. * src/visibility.c (gpgrt_set_syscall_clamp): New. (gpgrt_lock_trylock): New. (gpgrt_vsnprintf): Fix symbol name. * src/init.c (DllMain): Mark unused arg. * src/estream.c: Replace npth mutexes by our own locks. Replace yeild macro by _gpgrt_yield. (pre_syscall_func, post_syscall_func): New. (do_deinit): Clear both new vars. (es_func_fd_read, es_func_fd_write): Call pre and post syscall functions instead of the former SYSCALL macros. (es_func_w32_read, es_func_w32_write): Ditto. (es_func_fd_seek, es_func_w32_seek, es_func_fp_read) (es_func_fp_write, es_func_fp_seek, es_func_fp_destroy): Bracket syscalls with the pre- and post-syscall fucntions. (do_npth_read, do_npth_write): Remove. (_gpgrt_es_init): Remove call to mutex init. It is now statically initialized. (_gpgrt_set_syscall_clamp): New. (es_create): Destroy stream lock on error. (do_close): Destroy stream lock.
* Remove GnuPG specific code.Werner Koch2014-08-251-47/+1
| | | | * src/estream.c (es_write_sanitized_utf8_buffer): Remove.
* Add gpgrt_snprintf and gpgrt_vsnprintf.Werner Koch2014-08-255-5/+38
|
* Finish inclusion of estream into the API.Werner Koch2014-08-259-214/+1117
|
* Implement symbol visibility.Werner Koch2014-08-2518-47/+376
| | | | | | | | | | | | | * configure.ac: New option --enable-ld-version-script. (GPGRT_USE_VISIBILITY): New ac_define. (HAVE_LD_VERSION_SCRIPT): New am_conditional. * src/gpg-error.vers: New. * src/gpgrt-int.h: New. * src/visibility.c, src/visibility.h: New. Lot of changes to symbold names. -- This is only doe for the old API. The estream API needs to be added.
* First set of changes to include estream into the API.Werner Koch2014-08-255-595/+524
| | | | | | | | | | | * configure.ac (AH_BOTTOM): Define GPGRT_ENABLE_ES_MACROS. * src/gpg-error.h.in: include stdio.h. Include most of the estream functions and rename structures and types. * src/estream.h: Rewrite. Include only gpg-error.h and local prototypes. * src/estream.c: Rename types and macros. * src/estream-printf.c (_gpgrt_estream_snprintf): Prefix public functions with _gpgrt_.
* Fix some minor estream things.Werner Koch2014-08-252-21/+29
| | | | | | | * m4/estream.m4: Check for memrchr. * src/estream.c (memrchr) [!HAVE_MEMRCHR]: New. * src/init.c: Include estream.h (real_init): Init estream.
* Add missing redefine macros to cleanup the external symbols.Werner Koch2014-08-252-2/+7
|
* Add estream code from GnuPG.Werner Koch2014-08-255-0/+7000
| | | | | | | | | | | | | | | | | * src/estream-printf.c, src/estream-printf.h: New. * src/estream.c, src/estream.h: New. * m4/estream.m4: New. * src/Makefile.am (libgpg_error_la_SOURCES): Add new files. * configure.ac (AH_BOTTOM): Define estream prefix. <gcc>: Add useful gcc warning options. (estream_INIT): Call. -- This is the base line patch to move the estream code from GnuPG to libgpg-error. The code has been taken from the GnuPG repository at commit cb680c5ea540738692a5c74951802b0fdc658e85. Signed-off-by: Werner Koch <[email protected]>
* Use 16 byte alignment for hppa-unknown-linux-gnu.Werner Koch2014-08-052-0/+20
| | | | | | | | | | | * configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): New. * src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Set for HPPA-Linux. (main): Enforce alignment if needed. * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Use 16 byte alignment. -- Debian-bug-id: 757060
* Add new lock-obj-pub.*.h from debian buildds.Daniel Kahn Gillmor2014-07-2720-2/+478
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/syscfg/lock-obj-pub.aarch64-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.alpha-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabi.h: New. * src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabihf.h: New. * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.i486-pc-gnu.h: New. * src/syscfg/lock-obj-pub.i486-pc-kfreebsd-gnu.h: New. * src/syscfg/lock-obj-pub.i486-pc-linux-gnu.h: New. * src/syscfg/lock-obj-pub.m68k-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.mips-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.mipsel-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.powerpc-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.powerpc64-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.s390x-ibm-linux-gnu.h: New. * src/syscfg/lock-obj-pub.sh4-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.sparc-unknown-linux-gnu.h: New. * src/syscfg/lock-obj-pub.x86_64-pc-kfreebsd-gnu.h: New. * src/syscfg/lock-obj-pub.x86_64-pc-linux-gnu.h: New. * src/syscfg/lock-obj-pub.x86_64-pc-linux-gnux32.h: New. * src/Makefile.am (lock_obj_pub): Add new files. -- To generate these: pull all the logs stored under the "install" links from: https://buildd.debian.org/status/package.php?p=libgpg-error&suite=unstable https://buildd.debian-ports.org/status/package.php?p=libgpg-error&suite=unstable and then extract the headers via: for x in fetch*; do awk '/^## lock-obj-pub\..*\.h$/{ X=2 } { if (X > 0) { print $0 } } /^##$/{ X = X-1 } ' < "$x" >tmp mv -f tmp $( head -n1 < tmp | cut -f2 -d\ ) done