Changeset View
Changeset View
Standalone View
Standalone View
common/asshelp.c
Context not available. | |||||
if (!(err = lock_spawning (&lock, gnupg_homedir (), "agent", verbose)) | if (!(err = lock_spawning (&lock, gnupg_homedir (), "agent", verbose)) | ||||
&& assuan_socket_connect (ctx, sockname, 0, 0)) | && assuan_socket_connect (ctx, sockname, 0, 0)) | ||||
{ | { | ||||
#ifdef HAVE_W32_SYSTEM | |||||
err = gnupg_spawn_process_detached (program? program : agent_program, | err = gnupg_spawn_process_detached (program? program : agent_program, | ||||
argv, NULL); | argv, NULL); | ||||
#else | |||||
pid_t pid; | |||||
err = gnupg_spawn_process_fd (program? program : agent_program, | |||||
argv, -1, -1, -1, &pid); | |||||
if (!err) | |||||
err = gnupg_wait_process (program? program : agent_program, | |||||
pid, 1, NULL); | |||||
#endif | |||||
if (err) | if (err) | ||||
log_error ("failed to start agent '%s': %s\n", | log_error ("failed to start agent '%s': %s\n", | ||||
agent_program, gpg_strerror (err)); | agent_program, gpg_strerror (err)); | ||||
Context not available. | |||||
if (!(err = lock_spawning (&lock, gnupg_homedir (), "dirmngr", verbose)) | if (!(err = lock_spawning (&lock, gnupg_homedir (), "dirmngr", verbose)) | ||||
&& assuan_socket_connect (ctx, sockname, 0, 0)) | && assuan_socket_connect (ctx, sockname, 0, 0)) | ||||
{ | { | ||||
#ifdef HAVE_W32_SYSTEM | |||||
err = gnupg_spawn_process_detached (dirmngr_program, argv, NULL); | err = gnupg_spawn_process_detached (dirmngr_program, argv, NULL); | ||||
#else | |||||
pid_t pid; | |||||
err = gnupg_spawn_process_fd (dirmngr_program, argv, | |||||
-1, -1, -1, &pid); | |||||
if (!err) | |||||
err = gnupg_wait_process (dirmngr_program, pid, 1, NULL); | |||||
#endif | |||||
if (err) | if (err) | ||||
log_error ("failed to start the dirmngr '%s': %s\n", | log_error ("failed to start the dirmngr '%s': %s\n", | ||||
dirmngr_program, gpg_strerror (err)); | dirmngr_program, gpg_strerror (err)); | ||||
Context not available. |