Hell all, I am trying to pipe my passphrase to unlock the key. my problem is like this, when I use git to sign a tag gnupg ask for the passphrase and i need to pipe the passphrase.
I try echo "my long passphrase" | git tag -s 1.0.0.42 -m 'version 1.0.0.1' however it did not work. i also try writing a program to do the same thing #include <stdio.h> #include <unistd.h> #include <string.h> int my_pipe[2]; void ErrorAndExit(char* message) { fprintf(stderr, "%s\n", message); exit(1); } void WriteToPipe(char* s) { write(my_pipe[1], s, strlen(s)); } int main(int argc, char* argv[]) { int pid; char* my_argv[]= {"/usr/bin/git", "tag", "-s", "1.0.0.2", "-m", "'version 1.0.0.2'", 0 }; if (pipe(my_pipe) == -1) ErrorAndExit("pipe failed."); pid=fork(); if (pid==-1) ErrorAndExit("fork failed."); if (pid==0) { /* son process */ close(0); dup(my_pipe[0]); close(my_pipe[0]); close(my_pipe[1]); execv(my_argv[0], my_argv); ErrorAndExit("Program not found."); } /* father process */ WriteToPipe("My Really Really Really Really Long passphrase \n"); WriteToPipe("\n"); return 0; } The problem with this code it keep writing to the pipe and would not exit. is there is any workaround for my problem ? Any help would be much appreciated. Sincerely, falazemi note: using pinentry-curses _______________________________________________ Gnupg-users mailing list Gnupg-users@gnupg.org http://lists.gnupg.org/mailman/listinfo/gnupg-users