Justus Winter, le Thu 07 Nov 2013 19:12:30 +0100, a écrit : > This switch makes settrans write the pid file of the active translator > it starts to a file. This makes the pid easily retrievable for test > suites.
Ack. > * utils/settrans.c (options): Add --pid-file. > (main): Add variable pid_file. > (parse_opt): Handle --pid-file switch. > (open_node): Write pid file. > --- > utils/settrans.c | 22 +++++++++++++++++++++- > 1 file changed, 21 insertions(+), 1 deletion(-) > > diff --git a/utils/settrans.c b/utils/settrans.c > index a881401..d13e7c4 100644 > --- a/utils/settrans.c > +++ b/utils/settrans.c > @@ -1,6 +1,6 @@ > /* Set a file's translator. > > - Copyright (C) 1995,96,97,98,2001,02 Free Software Foundation, Inc. > + Copyright (C) 1995,96,97,98,2001,02,13 Free Software Foundation, Inc. > Written by Miles Bader <mi...@gnu.org> > > This program is free software; you can redistribute it and/or > @@ -49,6 +49,8 @@ static struct argp_option options[] = > {"passive", 'p', 0, 0, "Change NODE's passive translator record > (default)" }, > {"create", 'c', 0, 0, "Create NODE if it doesn't exist" }, > {"dereference", 'L', 0, 0, "If a translator exists, put the new one on > top"}, > + {"pid-file", 'F', "FILENAME", 0, "When starting an active translator," > + " write its pid to this file"}, > {"pause", 'P', 0, 0, "When starting an active translator, prompt and" > " wait for a newline on stdin before completing the startup handshake"}, > {"timeout", 't',"SEC",0, "Timeout for translator startup, in seconds" > @@ -104,6 +106,7 @@ main(int argc, char *argv[]) > /* Various option flags. */ > int passive = 0, active = 0, keep_active = 0, pause = 0, kill_active = 0, > orphan = 0; > + char *pid_file = NULL; > int excl = 0; > int timeout = DEFAULT_TIMEOUT * 1000; /* ms */ > char **chroot_command = 0; > @@ -136,6 +139,12 @@ main(int argc, char *argv[]) > case 'g': kill_active = 1; break; > case 'x': excl = 1; break; > case 'P': pause = 1; break; > + case 'F': > + pid_file = strdup (arg); > + if (pid_file == NULL) > + error(3, ENOMEM, "Failed to duplicate argument"); > + break; > + > case 'o': orphan = 1; break; > > case 'C': > @@ -221,6 +230,17 @@ main(int argc, char *argv[]) > getchar (); > } > > + if (pid_file != NULL) > + { > + FILE *h; > + h = fopen (pid_file, "w"); > + if (h == NULL) > + error (4, errno, "Failed to open pid file"); > + > + fprintf (h, "%i\n", task2pid (task)); > + fclose (h); > + } > + > node = file_name_lookup (node_name, flags | lookup_flags, 0666); > if (node == MACH_PORT_NULL) > { > -- > 1.7.10.4 > > -- Samuel <b> il faut combien de chevaux pour tirer une doloréan à 88 morph ? ***b vient de remarque que 88 mph c'est 142 km/h <y> aaaaah <y> c'est pour ça qu'ils limitent à 130 km/h sur les autoroutes <y> c'est pour éviter que les gens voyagent dans le temps <b> probablement