1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00
gnupg/common
Neal H. Walfield f2d75ac7dc iobuf: Add the IOBUF_INPUT_TEMP type to improve input temp handling.
* common/iobuf.h (enum iobuf_use): Add new member, IOBUF_INPUT_TEMP.
* common/iobuf.c (iobuf_temp_with_content): Create the iobuf as an
IOBUF_INPUT_TEMP, not an IOBUF_INPUT buffer.  Assert that LENGTH ==
A->D.SIZE.
(iobuf_push_filter2): If A is an IOBUF_INPUT_TEMP, then make the new
filter an IOBUF_INPUT filter and set its buffer size to
IOBUF_BUFFER_SIZE.
(underflow): If A is an IOBUF_INPUT_TEMP, then just return EOF; don't
remove already read data.
(iobuf_seek): If A is an IOBUF_INPUT_TEMP, don't discard the buffered
data.
(iobuf_alloc): Allow USE == IOBUF_INPUT_TEMP.
(pop_filter): Allow USE == IOBUF_INPUT_TEMP.
(iobuf_peek): Allow USE == IOBUF_INPUT_TEMP.
(iobuf_writebyte): Fail if USE == IOBUF_INPUT_TEMP.
(iobuf_write): Fail if USE == IOBUF_INPUT_TEMP.
(iobuf_writestr): Fail if USE == IOBUF_INPUT_TEMP.
(iobuf_flush_temp): Fail if USE == IOBUF_INPUT_TEMP.

--
Signed-off-by: Neal H. Walfield <neal@g10code.com>.

Introduce a new iobuf type, IOBUF_INPUT_TEMP.  Use this for the iobuf
created by iobuf_temp_with_content instead of IOBUF_INPUT.  This was
necessary so that seeking and peeking correctly work on this type of
iobuf.  In particular, seeking didn't work because we discarded the
buffered data and peeking didn't work because we discarded data which
was already read, which made seeking later impossible.
2015-09-02 10:24:49 +02:00
..
agent-opt.c agent: Move a typedef to common and provide parse_pinentry_mode. 2013-02-06 12:56:19 +01:00
argparse.c common: Fix regression in building argpase.c standalone. 2015-09-01 07:37:12 +02:00
argparse.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
asshelp.c common: Rename log and gcc attribute macros (jnlib merge). 2015-04-24 16:10:47 +02:00
asshelp.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
asshelp2.c Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
audit.c Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
audit.h Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
b64dec.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
b64enc.c Use inline functions to convert buffer data to scalars. 2015-02-11 10:28:25 +01:00
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
ChangeLog-2011.include include: Remove this directory. 2014-01-29 17:45:05 +01:00
ChangeLog.jnlib common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
common-defs.h common: Remove libjnlib-config.h (jnlib merge). 2015-04-24 15:19:10 +02:00
convert.c common: Minor change of hex2str to allow for embedded nul. 2015-04-23 15:51:51 +02:00
dotlock.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
dotlock.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
dynload.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
exaudit.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
exechelp-posix.c common: Cope with AIX problem on number of open files. 2015-05-11 20:22:32 +02:00
exechelp-w32.c Remove support for the GPG_AGENT_INFO envvar. 2014-10-03 11:58:58 +02:00
exechelp-w32ce.c common: Cleanup the use of USE_NPTH and HAVE_NPTH macros. 2014-05-02 08:22:38 +02:00
exechelp.h Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
exstatus.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
gc-opt-flags.h gpg: Add option --dirmngr-program. 2014-03-12 18:35:36 +01:00
get-passphrase.c Add "gpgconf --kill dirmngr" and avoid useless launch before a kill. 2014-11-19 10:47:56 +01:00
get-passphrase.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
gettime.c common: Add new function gnupg_gmtime. 2015-04-10 13:09:39 +02:00
gettime.h common: Add new function gnupg_gmtime. 2015-04-10 13:09:39 +02:00
gnupg.ico w32: Add icons and version information. 2013-05-07 21:35:48 +02:00
gpgrlhelp.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01:00
helpfile.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
homedir.c w32: Try more places to find an installed Pinentry. 2015-07-28 13:52:12 +02:00
host2net.h Use inline functions to convert buffer data to scalars. 2015-02-11 10:28:25 +01:00
http.c common: Make proper use of http proxy parameter. 2015-04-21 19:27:22 +02:00
http.h gpg: Remove gratuitous extern qualifier from declaration. 2015-03-31 12:00:58 +02:00
i18n.c common,w32: Avoid unused var warning about msgcache. 2015-07-28 17:38:44 +02:00
i18n.h Flag the L_() function with attribute format_arg. 2015-06-30 22:28:41 +02:00
init.c Add a hook to be called right after main. 2015-01-28 19:57:22 +01:00
init.h Add a hook to be called right after main. 2015-01-28 19:57:22 +01:00
iobuf.c iobuf: Add the IOBUF_INPUT_TEMP type to improve input temp handling. 2015-09-02 10:24:49 +02:00
iobuf.h iobuf: Add the IOBUF_INPUT_TEMP type to improve input temp handling. 2015-09-02 10:24:49 +02:00
isascii.c Changed to GPLv3. 2007-07-04 19:49:40 +00:00
keyserver.h gpg: Update sub-options of --keyserver-options 2015-04-21 10:15:04 +02:00
localename.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
logging.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
logging.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
Makefile.am common/iobuf.c: Better respect boundary conditions in iobuf_read_line. 2015-08-20 14:16:19 +02:00
mapstrings.c Typo fix. 2015-03-17 09:18:23 +01:00
mbox-util.c common: Add function is_valid_mailbox_mem. 2015-03-20 15:40:09 +01:00
mbox-util.h common: Add function is_valid_mailbox_mem. 2015-03-20 15:40:09 +01:00
membuf.c Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
membuf.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
miscellaneous.c common: Improve fucntion parse_debug_flag. 2015-06-23 09:13:45 +02:00
mischelp.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
mischelp.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
mkerrors Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
mkerrtok Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
mkstrtable.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
openpgp-oid.c common: Change alias for Curve25519 to "cv25519". 2015-08-07 09:37:49 +02:00
openpgpdefs.h gpg: Use algorithm id 22 for EdDSA. 2014-09-12 11:31:49 +02:00
percent.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
README This commit was manufactured by cvs2svn to create branch 2003-08-05 17:11:04 +00:00
session-env.c Pass DBUS_SESSION_BUS_ADDRESS for gnome3 2015-06-30 22:40:29 +02:00
session-env.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
sexp-parse.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
sexputil.c common: Remove superfluous statements. 2014-09-18 16:01:11 +02:00
shareddefs.h agent: Move a typedef to common and provide parse_pinentry_mode. 2013-02-06 12:56:19 +01:00
signal.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
simple-pwquery.c common: Remove two JNLIB_ macros (jnlib merge). 2015-04-24 16:10:15 +02:00
simple-pwquery.h common: Remove two JNLIB_ macros (jnlib merge). 2015-04-24 16:10:15 +02:00
srv.c Use inline functions to convert buffer data to scalars. 2015-02-11 10:28:25 +01:00
srv.h w32: Include winsock2.h to silence warnings. 2014-03-07 14:18:43 +01:00
ssh-utils.c agent: Cleanups to prepare implementation of Ed25519. 2014-03-22 20:52:03 +01:00
ssh-utils.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
status.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
status.h gpg: Print a new FAILURE status after most commands. 2015-08-25 15:26:33 +02:00
stringhelp.c Avoid a leading double slash in make_filename. 2015-07-22 11:05:32 +02:00
stringhelp.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
strlist.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
strlist.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
sysutils.c Remove use of gnulib (part 2) 2014-11-11 15:14:31 +01:00
sysutils.h Remove use of gnulib (part 2) 2014-11-11 15:14:31 +01:00
t-b64.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-convert.c common: Minor change of hex2str to allow for embedded nul. 2015-04-23 15:51:51 +02:00
t-dotlock.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-exechelp.c Fixed set but unused variable bugs 2011-08-10 14:11:30 +02:00
t-gettime.c common: Add new function isodate_human_to_tm 2015-04-10 13:09:37 +02:00
t-helpfile.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-http.c First changes for future use of NTBTLS. 2014-10-02 17:33:57 +02:00
t-iobuf.c iobuf: Fix test. 2015-09-02 10:07:40 +02:00
t-mapstrings.c common: New function map_static_macro_string. 2014-02-26 16:18:45 +01:00
t-mbox-util.c Move new mailbox.c source file to common/. 2015-02-25 11:43:50 +01:00
t-openpgp-oid.c gpg: Add --list-gcrypt-config and "curve" item for --list-config. 2015-03-10 15:35:30 +01:00
t-percent.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-session-env.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-sexputil.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-ssh-utils.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-stringhelp.c common: Add function strtokenize. 2015-06-22 19:28:33 +02:00
t-support.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
t-support.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
t-sysutils.c Remove use of gnulib (part 2) 2014-11-11 15:14:31 +01:00
t-timestuff.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
t-w32-reg.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
t-zb32.c common: Add another test case to zb32.c 2015-02-24 17:02:00 +01:00
tls-ca.pem http: Revamp TLS API. 2014-05-02 11:19:25 +02:00
tlv.c Use inline functions to convert buffer data to scalars. 2015-02-11 10:28:25 +01:00
tlv.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
ttyio.c Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
ttyio.h Change some keyedit functions to allow printing to arbitrary streams. 2014-03-27 12:59:55 +01:00
types.h Replace GNUPG_GCC_A_ macros by GPGRT_ATTR_ macros. 2015-07-26 12:50:24 +02:00
userids.c Improve spelling and grammar of some comments. 2015-03-23 19:58:30 +01:00
userids.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
utf8conv.c common: Assume an utf-8 locale on iconv errors. 2015-09-01 07:37:12 +02:00
utf8conv.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
util.h Curve25519 support. 2015-08-06 17:00:41 +09:00
w32-afunix.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
w32-afunix.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
w32-reg.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
w32help.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
w32info-rc.h.in Update copyright years. 2015-02-03 09:12:45 +01:00
xasprintf.c Switch to the libgpg-error provided estream. 2014-08-26 17:47:54 +02:00
xmalloc.c common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
xmalloc.h common: Remove JNLIB from boiler plate (jnlib merge). 2015-04-24 16:42:28 +02:00
xreadline.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
yesno.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
zb32.c common: Add z-base-32 encoder. 2014-04-17 21:09:10 +02:00

Stuff used by several modules of GnuPG.

These directories use it:

gpg
sm
agent

These directories don't use it:

kbx