Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37915363
en ru br
Репозитории ALT
5.1: 1.5-alt5
4.1: 1.5-alt5
4.0: 1.5-alt5
3.0: 1.5-alt1
www.altlinux.org/Changes

Группа :: Мониторинг
Пакет: tcptraceroute

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: tcptraceroute-1.5beta7-alt-usage.patch
Скачать


diff -upk.orig tcptraceroute-1.5beta7.orig/main.c tcptraceroute-1.5beta7/main.c
--- tcptraceroute-1.5beta7.orig/main.c	2006-03-29 16:11:38 +0000
+++ tcptraceroute-1.5beta7/main.c	2006-03-29 16:28:44 +0000
@@ -296,7 +296,7 @@ int main(int argc, char **argv)
 	for(i = 1; argv[i]; i++)
 	{
 		if (CHECKLONG("--help"))
-			usage();
+			print_help();
 
 		if (CHECKLONG("--version"))
 			about();
@@ -386,8 +386,7 @@ int main(int argc, char **argv)
 
 		if (argv[i][0] == '-' && argv[i][1] == '-')
 		{
-			fprintf(stderr, "Unknown command line argument: %s\n", argv[i]);
-			usage();
+			print_usage("Unknown command line argument: %s", argv[i]);
 		}
 	}
 
@@ -400,7 +399,7 @@ int main(int argc, char **argv)
 		switch(op)
 		{
 			case 'h':
-				usage();
+				print_help();
 
 			case 'v':
 				about();
@@ -493,9 +492,8 @@ int main(int argc, char **argv)
 			case '?':
 			default:
 				if (optopt != ':' && strchr(optstring, optopt))
-					fatal("Argument required for -%c\n", optopt);
-				fprintf(stderr, "Unknown command line argument: -%c\n", optopt);
-				usage();
+					print_usage("Argument required for -%c", optopt);
+				print_usage("Unknown command line argument: -%c", optopt);
 		}
 
 	argc -= optind;
@@ -526,7 +524,7 @@ int main(int argc, char **argv)
 			break;
 
 		default:
-			usage();
+			print_usage("Invalid number of arguments");
 	}
 
 	if (getuid() & geteuid())
diff -upk.orig tcptraceroute-1.5beta7.orig/util.c tcptraceroute-1.5beta7/util.c
--- tcptraceroute-1.5beta7.orig/util.c	2006-03-29 02:30:44 +0000
+++ tcptraceroute-1.5beta7/util.c	2006-03-29 16:33:26 +0000
@@ -69,14 +69,28 @@ void pfatal(char *err)
 	exit(1);
 }
 
-void usage(void)
+void print_help(void)
 {
 	printf("\n%s %s\n%s\n", PACKAGE, VERSION, BANNER);
-    fatal("\
+	printf("\
 Usage: %s [-nNFSAE] [-i <interface>] [-f <first ttl>]\n\
        [-l <packet length>] [-q <number of queries>] [-t <tos>]\n\
        [-m <max ttl>] [-pP] <source port>] [-s <source address>]\n\
        [-w <wait time>] <host> [destination port] [packet length]\n\n", name);
+	exit(0);
+}
+
+void print_usage(char *fmt, ...)
+{
+	va_list ap;
+	fflush(stdout);
+	va_start(ap, fmt);
+	fprintf(stderr, "%s: ", name);
+	vfprintf(stderr, fmt, ap);
+	va_end(ap);
+	fprintf(stderr, "\nTry `%s --help' for more information.\n", name);
+	fflush(stderr);
+	exit(1);
 }
 
 void about(void)
diff -upk.orig tcptraceroute-1.5beta7.orig/util.h tcptraceroute-1.5beta7/util.h
--- tcptraceroute-1.5beta7.orig/util.h	2006-03-29 16:10:26 +0000
+++ tcptraceroute-1.5beta7/util.h	2006-03-29 16:32:19 +0000
@@ -56,7 +56,8 @@ void fatal(char *, ...) TCPTRACEROUTE_NO
 void debug(char *, ...) TCPTRACEROUTE_FORMAT((__printf__, 1, 2));
 void warn(char *, ...) TCPTRACEROUTE_FORMAT((__printf__, 1, 2));
 void pfatal(char *) TCPTRACEROUTE_NORETURN;
-void usage(void) TCPTRACEROUTE_NORETURN;
+void print_help(void) TCPTRACEROUTE_NORETURN;
+void print_usage(char *, ...) TCPTRACEROUTE_NORETURN TCPTRACEROUTE_FORMAT((__printf__, 1, 2));
 void about(void) TCPTRACEROUTE_NORETURN;
 void *xrealloc(void *, int);
 char *safe_strncpy(char *, char *, int);
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin