mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-02 12:01:32 +01:00
* misc.c (setup_pinentry_env): New.
* import.c (popen_protect_tool): Call it. * export.c (popen_protect_tool): Call it.
This commit is contained in:
parent
5b9023c6e7
commit
aaac5dd2dc
@ -1,3 +1,9 @@
|
||||
2004-04-13 Werner Koch <wk@gnupg.org>
|
||||
|
||||
* misc.c (setup_pinentry_env): New.
|
||||
* import.c (popen_protect_tool): Call it.
|
||||
* export.c (popen_protect_tool): Call it.
|
||||
|
||||
2004-04-08 Werner Koch <wk@gnupg.org>
|
||||
|
||||
* decrypt.c (gpgsm_decrypt): Return GPG_ERR_NO_DATA if it is not a
|
||||
|
@ -581,6 +581,8 @@ popen_protect_tool (const char *pgmname,
|
||||
close(i);
|
||||
errno = 0;
|
||||
|
||||
setup_pinentry_env ();
|
||||
|
||||
execlp (pgmname, arg0,
|
||||
"--homedir", opt.homedir,
|
||||
"--p12-export",
|
||||
|
@ -299,6 +299,8 @@ int gpgsm_dirmngr_run_command (ctrl_t ctrl, const char *command,
|
||||
int argc, char **argv);
|
||||
|
||||
|
||||
/*-- misc.c --*/
|
||||
void setup_pinentry_env (void);
|
||||
|
||||
|
||||
|
||||
|
@ -498,6 +498,8 @@ popen_protect_tool (const char *pgmname,
|
||||
close(i);
|
||||
errno = 0;
|
||||
|
||||
setup_pinentry_env ();
|
||||
|
||||
execlp (pgmname, arg0,
|
||||
"--homedir", opt.homedir,
|
||||
"--p12-import",
|
||||
|
36
sm/misc.c
36
sm/misc.c
@ -1,5 +1,5 @@
|
||||
/* misc.c - Miscellaneous fucntions
|
||||
* Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
* Copyright (C) 2004 Free Software Foundation, Inc.
|
||||
*
|
||||
* This file is part of GnuPG.
|
||||
*
|
||||
@ -25,9 +25,41 @@
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <unistd.h>
|
||||
#ifdef HAVE_LOCALE_H
|
||||
#include <locale.h>
|
||||
#endif
|
||||
|
||||
#include "gpgsm.h"
|
||||
|
||||
#include <ksba.h>
|
||||
|
||||
/* Setup the environment so that the pinentry is able to get all
|
||||
required information. This is used prior to an exec of the
|
||||
protect-tool. */
|
||||
void
|
||||
setup_pinentry_env (void)
|
||||
{
|
||||
char *lc;
|
||||
|
||||
if (opt.display)
|
||||
setenv ("DISPLAY", opt.display, 1);
|
||||
if (opt.ttyname)
|
||||
setenv ("GPG_TTY", opt.ttyname, 1);
|
||||
if (opt.ttytype)
|
||||
setenv ("TERM", opt.ttytype, 1);
|
||||
|
||||
if (opt.lc_ctype)
|
||||
setenv ("LC_CTYPE", opt.lc_ctype, 1);
|
||||
#if defined(HAVE_SETLOCALE) && defined(LC_CTYPE)
|
||||
else if ( (lc = setlocale (LC_CTYPE, "")) )
|
||||
setenv ("LC_CTYPE", lc, 1);
|
||||
#endif
|
||||
|
||||
if (opt.lc_messages)
|
||||
setenv ("LC_MESSAGES", opt.lc_messages, 1);
|
||||
#if defined(HAVE_SETLOCALE) && defined(LC_MESSAGES)
|
||||
else if ( (lc = setlocale (LC_MESSAGES, "")) )
|
||||
setenv ("LC_MESSAGES", lc, 1);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user