1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-11-10 21:38:50 +01:00
Commit Graph

87 Commits

Author SHA1 Message Date
Werner Koch
22caa5c2d4
Fix possible sign extension problem with newer compilers.
* cipher/des.c (READ_64BIT_DATA): Cast to u32 before shifting by 24.
* cipher/blowfish.c (do_encrypt_block): Ditto.
(do_decrypt_block): Ditto.
* cipher/camellia.c (CAMELLIA_RR8): Ditto.
* cipher/cast5.c (do_encrypt_block): Ditto.
(do_decrypt_block): Ditto.
(do_cast_setkey): Ditto.
* cipher/twofish.c (INPACK): Ditto.
* util/iobuf.c (block_filter): Ditto.
--

For cipher/des.c
Reported-by: Balint Reczey <balint@balintreczey.hu>

See commit 57af33d9e7 for details.

Signed-off-by: Werner Koch <wk@gnupg.org>
2016-02-01 18:15:28 +01:00
NIIBE Yutaka
aa4a3aa3e7 g10: Fix iobuf API of filter function for alignment.
* include/iobuf.h (struct iobuf_struct): Remove DESC.
* util/iobuf.c (iobuf_desc): New.
(print_chain, iobuf_close, iobuf_open, iobuf_fdopen, iobuf_sockopen)
(iobuf_create, iobuf_append, iobuf_openrw, iobuf_ioctl)
(iobuf_push_filter2, pop_filter, underflow): Use iobuf_desc.
(file_filter, sock_filter, block_filter): Fill the description.
* g10/armor.c, g10/cipher.c, g10/compress-bz2.c, g10/compress.c,
g10/encode.c, g10/encr-data.c, g10/mdfilter.c, g10/pipemode.c,
g10/progress.c, g10/textfilter.c: Likewise.

--

Newer GCC warns against possible alignment difference of pointers.
This change can silence those warnings.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>

(backported from 2.1 commit 3f52c7da39)
2016-01-26 15:38:27 +09:00
Daniel Kahn Gillmor
e7cbce8fb2 avoid future chance of using uninitialized memory
* util/iobuf.c: (iobuf_open): initialize len

--

Cherry-pick 367b073ab5.

In iobuf_open, IOBUFCTRL_DESC and IOBUFCTRL_INIT commands are invoked
(via file_filter()) on fcx, passing in a pointer to an uninitialized
len.

With these two commands, file_filter doesn't actually do anything with
the value of len, so there's no actual risk of use of uninitialized
memory in the code as it stands.

However, some static analysis tools might flag this situation with a
warning, and initializing the value doesn't hurt anything, so i think
this trivial cleanup is warranted.

Debian-Bug-Id: 773469
2015-01-13 11:06:43 +09:00
Werner Koch
f10b184e48 gpg: Limit the nesting level of I/O filters.
* until/iobuf.c (MAX_NESTING_FILTER): New.
(iobuf_push_filter2): Limit the nesting level.
--

This is a more general fix for the nested compression packet bug.  In
particular this helps g10/import.c:read_block to stop pushing
compression filters onto an iobuf stream.

Signed-off-by: Werner Koch <wk@gnupg.org>
2013-10-04 20:45:49 +02:00
Werner Koch
aa29ba1689 Minor changes to help the VMS port 2010-09-28 10:07:30 +00:00
Werner Koch
198c5c5587 Fix bug 1179 2010-05-12 16:06:38 +00:00
Werner Koch
f5f0171d55 Fix compiler size warning for debug output 2009-08-18 10:46:34 +00:00
David Shaw
da66b1d69e * iobuf.c (fd_cache_synchronize): New. fsync() a file in cache.
(iobuf_ioctl): Called here, for ioctl 4.  (fd_cache_invalidate): Pass
return code from close() back to iobuf_ioctl().
2009-03-20 20:33:14 +00:00
Werner Koch
6ae5af5d7a Fix possible NULL argument to printf 2008-08-19 19:36:04 +00:00
Werner Koch
9a2a818887 Switched to GPLv3.
Updated gettext.
2007-10-23 10:48:09 +00:00
Werner Koch
064a4a6240 Fixed bug 479. Not a real good fix but a reliable one which limits possible
breakage of other partys of the code.
2006-07-31 10:16:33 +00:00
Werner Koch
168583e596 Add new regression test 2006-04-11 07:49:25 +00:00
Werner Koch
bd1df0119c Renamed g10.c to gpg.c
Filelength fixes for W32.
2005-10-05 16:58:50 +00:00
Werner Koch
a1cdf3c75f Converted all m_free to xfree etc. 2005-07-27 18:10:56 +00:00
Werner Koch
7d4043ca57 Updated FSF street address and preparations for a release candidate. 2005-05-31 08:39:18 +00:00
Werner Koch
be4bb5a88b (handle_iconv_error): Turn diagnostics into warnings
so that gpg does not return with failure.
(native_to_utf8, utf8_to_native): Ditto.
2004-12-20 08:55:03 +00:00
Werner Koch
5bc5baf304 (fd_cache_strcmp): New. Use whenever we compare
filenames for the fd_cache. This is needed because the backslash
is an alias for a slash under W32. Reported by Tobias Winkler.
2004-12-06 10:32:20 +00:00
Timo Schulz
37ecd725e5 2004-11-03 Timo Schulz <twoaday@g10code.com>
* strgutil.c (w32_strerror): New.
        * ttyio.c (init_ttyfp, tty_printf, do_get): Use it here.
        * iobuf.c (fd_cache_open, file_filter): Likewise.
        (iobuf_seek, translate_file_handle): Likewise.
2004-11-03 20:03:46 +00:00
Werner Koch
299ab4e48d (iobuf_get_fd): Removed double check on directfp and
cats it to FILEP becuase directfp is actually a void *.  Notes by
Stefan.
2004-10-14 07:20:54 +00:00
Werner Koch
161286635c * configure.ac: Actually name the option --disable-finger and not
http.  Add option --enable-selinux-support.

* logger.c (g10_log_error_f, g10_log_fatal_f, g10_log_info_f)
(g10_log_debug_f, print_prefix_f): Removed.

* iobuf.c (iobuf_is_pipe_filename): New.
(iobuf_get_fd): New.
2004-10-13 18:08:39 +00:00
Werner Koch
620ac79ebf * configure.ac: Actually name the option --disable-finger and not
http.

* openfile.c (overwrite_filep, make_outfile_name, open_outfile)
(open_sigfile): Use iobuf_is_pipe_filename to check for pipes so
that special filesnames are taken into account. This is bug 327.
* tdbdump.c (import_ownertrust): Ditto.
* sign.c (write_plaintext_packet): Ditto.
* progress.c (handle_progress): Ditto.
* plaintext.c (handle_plaintext): Ditto.
* encode.c (encode_simple, encode_crypt): Ditto.

* iobuf.c (iobuf_is_pipe_filename): New.
* fileutil.c (is_file_compressed): Use it here.
2004-10-13 09:59:46 +00:00
David Shaw
d0a1816d7f * iobuf.c (pop_filter): Make static.
* dotlock.c (destroy_dotlock): New.  Remove the handle from the list of
locks. (release_dotlock): Don't act if we don't have any locks at all.
From Werner on stable branch.
2004-09-30 14:26:36 +00:00
Werner Koch
87e3264f77 * photoid.c: Include ttyio.h.
* parse-packet.c (skip_rest): Removed.  Changed all callers to use
the new iobuf_skip_reset.  Orginal patch by Florian Weimer.

* iobuf.c (iobuf_skip_rest): New.  Orginal patch by Florian
Weimer.  Added new argument PARTIAL.
2004-09-09 12:42:10 +00:00
David Shaw
6d4cc84f3c * iobuf.c (block_filter): Remove the old gpg indeterminate length mode.
(iobuf_set_block_mode, iobuf_in_block_mode): Removed as superfluous.
2004-03-04 20:48:46 +00:00
David Shaw
0a05d98b8b * iobuf.c (block_filter): Properly handle a partial body stream that ends
with a 5-byte length that happens to be zero.
2004-03-01 21:48:32 +00:00
David Shaw
330f042fa4 * g10u.c: Dead code. Remove.
* Makefile.am: Don't compile g10u.c.

* iobuf.c (block_filter): Properly handle a partial body stream that ends
with a 5-byte length.
2003-12-30 00:50:32 +00:00
David Shaw
cd06705184 * dotlock.c, http.c, iobuf.c, simple-gettext.c, srv.c, srv.h, strgutil.c,
ttyio.c, w32reg.c: s/__MINGW32__/_WIN32/ to help building on native
Windows compilers.  Requested by Brian Gladman. From Werner on stable
branch.

* http.c (connect_server): Oops - forgot to freeaddrinfo().
2003-08-28 23:29:32 +00:00
David Shaw
654276143b * iobuf.c (check_special_filename): Replaced is isdigit by digitp
to avoid passing negative values and potential locale problems.
Problem noted by Christian Biere.
* strgutil.c (strlwr,strcasecmp,strncasecmp): Make sure we don't
pass a negative value.
* miscutil.c (scan_isodatestr): Ditto.
2003-07-10 12:26:42 +00:00
David Shaw
c84fdfbe62 * argparse.c, dotlock.c, fileutil.c, iobuf.c, miscutil.c,
simple-gettext.c, errors.c, http.c, memory.c, secmem.c, ttyio.c: Edit all
preprocessor instructions to remove whitespace before the '#'.  This is
not required by C89, but there are some compilers out there that don't
like it.
2003-05-24 16:53:14 +00:00
David Shaw
7282f79c2e * iobuf.c (iobuf_flush): Only print debug info if debugging is on. 2002-12-26 20:58:23 +00:00
David Shaw
d771dd272d * w32reg.c (read_w32_registry_string): Fixed expanding of the environment
buffer; didn't worked at all.  Reported by Thijmen Klok.  From Werner on
stable branch.

* secmem.c (secmem_free, secmem_term): Use wipememory2() instead of
memset() to overwrite secure memory

* iobuf.c (direct_open): Handle mode 'b' if O_BINARY is available. From
Werner on stable branch.

* fileutil.c: Comment from stable branch.
2002-11-06 22:51:44 +00:00
Werner Koch
c6178bdb69 * iobuf.c (block_filter): Removed the assert, so that one can pass
the first character of a message and use the block filter for
non partial length encoded packets.
2002-08-30 16:37:09 +00:00
David Shaw
3f51f7db3d Update head to match stable 1.0 2002-06-29 13:46:34 +00:00
Werner Koch
986d928ce2 See ChangeLog: Mon Sep 18 16:35:45 CEST 2000 Werner Koch 2000-09-18 14:35:34 +00:00
Werner Koch
d81c3f733b See ChangeLog: Fri Jul 28 18:19:11 CEST 2000 Werner Koch 2000-07-28 16:19:07 +00:00
Werner Koch
b872ea2577 See ChangeLog: Tue Jul 25 17:44:15 CEST 2000 Werner Koch 2000-07-25 15:38:12 +00:00
Werner Koch
92cd255508 See ChangeLog: Fri Jul 14 19:38:23 CEST 2000 Werner Koch 2000-07-14 17:34:53 +00:00
Werner Koch
baa30ad117 See ChangeLog: Thu Jan 27 18:00:44 CET 2000 Werner Koch 2000-01-27 16:50:45 +00:00
Werner Koch
0070faa0ff See ChangeLog: Mon Jan 24 13:04:28 CET 2000 Werner Koch 2000-01-24 11:55:49 +00:00
Werner Koch
39fe1cbfde See ChangeLog: Fri Sep 3 10:06:06 CEST 1999 Werner Koch 1999-09-03 08:15:32 +00:00
Werner Koch
28c861268d See ChangeLog: Wed Aug 4 10:34:46 CEST 1999 Werner Koch 1999-08-04 08:45:27 +00:00
Werner Koch
080c9ca49f See ChangeLog: Sat Jun 26 12:15:59 CEST 1999 Werner Koch 1999-06-26 10:23:06 +00:00
Werner Koch
3dddf602dd See ChangeLog: Tue Jun 1 16:01:46 CEST 1999 Werner Koch 1999-06-01 14:08:57 +00:00
Werner Koch
c34c676958 See ChangeLog: Mon May 31 19:41:10 CEST 1999 Werner Koch 1999-05-31 17:49:37 +00:00
Werner Koch
9131432b4d See ChangeLog: Sat May 22 22:47:26 CEST 1999 Werner Koch 1999-05-22 20:54:54 +00:00
Werner Koch
3983f30bd2 See ChangeLog: Mon May 17 21:54:43 CEST 1999 Werner Koch 1999-05-17 20:03:24 +00:00
Werner Koch
d1b9b359a6 See ChangeLog: Wed Feb 24 11:07:27 CET 1999 Werner Koch 1999-02-24 10:12:32 +00:00
Werner Koch
a4ff45f634 See ChangeLog: Fri Feb 19 15:49:15 CET 1999 Werner Koch 1999-02-19 14:54:00 +00:00
Werner Koch
e1a1b3fc90 See ChangeLog: Tue Feb 16 14:10:02 CET 1999 Werner Koch 1999-02-16 13:16:33 +00:00
Werner Koch
9a4f506a18 See ChangeLog: Wed Feb 10 17:15:39 CET 1999 Werner Koch 1999-02-10 16:22:40 +00:00