Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Mar 2019 22:15:37 -0700 (PDT)
From:      "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
To:        Warner Losh <imp@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r345050 - head/bin/date
Message-ID:  <201903120515.x2C5Fbtw013485@gndrsh.dnsmgr.net>
In-Reply-To: <201903120449.x2C4nxKQ069719@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
> Author: imp
> Date: Tue Mar 12 04:49:59 2019
> New Revision: 345050
> URL: https://svnweb.freebsd.org/changeset/base/345050
> 
> Log:
>   Remove now useless -d and -t flags.
>   
>   These were used to set dst flag and minutes west of UTC
>   respectively. These are obsolete and have been removed form the
>   kernel. These existed primarily to faithfully emulate early
>   Unix ABIs that have been removed from FreeBSD.
>   
>   Reviewed by: jbh@, brooks@
>   Differential Revision: https://reviews.freebsd.org/D19550

Can we get a commit to stable/12 that puts out a warning if
anyone uses -d or -t to the date command please?


> Modified:
>   head/bin/date/date.c
> 
> Modified: head/bin/date/date.c
> ==============================================================================
> --- head/bin/date/date.c	Tue Mar 12 04:49:47 2019	(r345049)
> +++ head/bin/date/date.c	Tue Mar 12 04:49:59 2019	(r345050)
> @@ -91,14 +91,12 @@ static const char *rfc2822_format = "%a, %d %b %Y %T %
>  int
>  main(int argc, char *argv[])
>  {
> -	struct timezone tz;
>  	int ch, rflag;
>  	bool Iflag, jflag, nflag, Rflag;
>  	const char *format;
>  	char buf[1024];
> -	char *endptr, *fmt;
> +	char *fmt;
>  	char *tmp;
> -	int set_timezone;
>  	struct vary *v;
>  	const struct vary *badv;
>  	struct tm *lt;
> @@ -108,18 +106,10 @@ main(int argc, char *argv[])
>  	v = NULL;
>  	fmt = NULL;
>  	(void) setlocale(LC_TIME, "");
> -	tz.tz_dsttime = tz.tz_minuteswest = 0;
>  	rflag = 0;
>  	Iflag = jflag = nflag = Rflag = 0;
> -	set_timezone = 0;
> -	while ((ch = getopt(argc, argv, "d:f:I::jnRr:t:uv:")) != -1)
> +	while ((ch = getopt(argc, argv, "f:I::jnRr:uv:")) != -1)
>  		switch((char)ch) {
> -		case 'd':		/* daylight savings time */
> -			tz.tz_dsttime = strtol(optarg, &endptr, 10) ? 1 : 0;
> -			if (endptr == optarg || *endptr != '\0')
> -				usage();
> -			set_timezone = 1;
> -			break;
>  		case 'f':
>  			fmt = optarg;
>  			break;
> @@ -160,13 +150,6 @@ main(int argc, char *argv[])
>  					usage();
>  			}
>  			break;
> -		case 't':		/* minutes west of UTC */
> -					/* error check; don't allow "PST" */
> -			tz.tz_minuteswest = strtol(optarg, &endptr, 10);
> -			if (endptr == optarg || *endptr != '\0')
> -				usage();
> -			set_timezone = 1;
> -			break;
>  		case 'u':		/* do everything in UTC */
>  			(void)setenv("TZ", "UTC0", 1);
>  			break;
> @@ -179,13 +162,6 @@ main(int argc, char *argv[])
>  	argc -= optind;
>  	argv += optind;
>  
> -	/*
> -	 * If -d or -t, set the timezone or daylight savings time; this
> -	 * doesn't belong here; the kernel should not know about either.
> -	 */
> -	if (set_timezone && settimeofday(NULL, &tz) != 0)
> -		err(1, "settimeofday (timezone)");
> -
>  	if (!rflag && time(&tval) == -1)
>  		err(1, "time");
>  
> @@ -411,8 +387,7 @@ static void
>  usage(void)
>  {
>  	(void)fprintf(stderr, "%s\n%s\n%s\n",
> -	    "usage: date [-jnRu] [-d dst] [-r seconds|file] [-t west] "
> -	    "[-v[+|-]val[ymwdHMS]]",
> +	    "usage: date [-jnRu] [-r seconds|file] [-v[+|-]val[ymwdHMS]]",
>  	    "            "
>  	    "[-I[date | hours | minutes | seconds]]",
>  	    "            "
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201903120515.x2C5Fbtw013485>