From 5c0ae06ef11d2ee7e4b184bd31a5650f2629b850 Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Sat, 3 Jun 2006 10:24:20 +0000 Subject: [PATCH] - No options should set the current system time. Shaun Jackman writes: A bug introduced in svn 11946 broke rdate. It no longer sets the current system time when no options are specified. The options have the opposite sense from what one might think, and, oddly enough, -ps is intentionally a no-op. Quoth rdate(8) from the BSD System Manager's Manual: -p Do not set, just print the remote time -s Do not print the time. --- util-linux/rdate.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/util-linux/rdate.c b/util-linux/rdate.c index 27bd1b481..c740a691e 100644 --- a/util-linux/rdate.c +++ b/util-linux/rdate.c @@ -68,7 +68,7 @@ int rdate_main(int argc, char **argv) remote_time = askremotedate(argv[optind]); - if (flags & 1) { + if ((flags & 2) == 0) { time_t current_time; time(¤t_time); @@ -77,10 +77,10 @@ int rdate_main(int argc, char **argv) else if (stime(&remote_time) < 0) bb_perror_msg_and_die("Could not set time of day"); + } - /* No need to check for the -p flag as it's the only option left */ - - } else printf("%s", ctime(&remote_time)); + if ((flags & 1) == 0) + printf("%s", ctime(&remote_time)); return EXIT_SUCCESS; } -- 2.25.1