[PATCH] Remove stime() function calls

Alistair Francis Alistair.Francis at wdc.com
Fri Nov 8 22:26:48 UTC 2019


On Wed, 2019-11-06 at 09:17 +0100, walter harms wrote:
> Your are right but so far i understand
> the idea here is to have a replacement when
> a programm demands stime().

Thanks! Do I need to do anything else or is this going to be merged?

Alistair

> 
> YM2C.
> 
> re,
>  wh
> 
> Am 06.11.2019 00:25, schrieb Alistair Francis:
> > stime() has been deprecated in glibc 2.31 and replaced with
> > clock_settime(). Let's replace the stime() function calls with
> > clock_settime() in preperation.
> > 
> > Signed-off-by: Alistair Francis <alistair.francis at wdc.com>
> > ---
> >  coreutils/date.c         | 2 +-
> >  libbb/missing_syscalls.c | 8 --------
> >  util-linux/rdate.c       | 9 +++++++--
> >  3 files changed, 8 insertions(+), 11 deletions(-)
> > 
> > diff --git a/coreutils/date.c b/coreutils/date.c
> > index f7e9a8d0e..d69b8bce7 100644
> > --- a/coreutils/date.c
> > +++ b/coreutils/date.c
> > @@ -300,7 +300,7 @@ int date_main(int argc UNUSED_PARAM, char
> > **argv)
> >  		ts.tv_sec = validate_tm_time(date_str, &tm_time);
> >  
> >  		/* if setting time, set it */
> > -		if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) {
> > +		if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME,
> > &ts) < 0) {
> >  			bb_simple_perror_msg("can't set date");
> >  		}
> >  	}
> > diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c
> > index 87cf59b3d..dc40d9155 100644
> > --- a/libbb/missing_syscalls.c
> > +++ b/libbb/missing_syscalls.c
> > @@ -15,14 +15,6 @@ pid_t getsid(pid_t pid)
> >  	return syscall(__NR_getsid, pid);
> >  }
> >  
> > -int stime(const time_t *t)
> > -{
> > -	struct timeval tv;
> > -	tv.tv_sec = *t;
> > -	tv.tv_usec = 0;
> > -	return settimeofday(&tv, NULL);
> > -}
> > -
> >  int sethostname(const char *name, size_t len)
> >  {
> >  	return syscall(__NR_sethostname, name, len);
> > diff --git a/util-linux/rdate.c b/util-linux/rdate.c
> > index 41aade5ea..f3cd51201 100644
> > --- a/util-linux/rdate.c
> > +++ b/util-linux/rdate.c
> > @@ -95,9 +95,14 @@ int rdate_main(int argc UNUSED_PARAM, char
> > **argv)
> >  	if (!(flags & 2)) { /* no -p (-s may be present) */
> >  		if (time(NULL) == remote_time)
> >  			bb_simple_error_msg("current time matches
> > remote time");
> > -		else
> > -			if (stime(&remote_time) < 0)
> > +		else {
> > +			struct timespec ts;
> > +			ts.tv_sec = remote_time;
> > +			ts.tv_nsec = 0;
> > +
> > +			if (clock_settime(CLOCK_REALTIME, &ts) < 0)
> >  				bb_simple_perror_msg_and_die("can't set
> > time of day");
> > +		}
> >  	}
> >  
> >  	if (flags != 1) /* not lone -s */
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox


More information about the busybox mailing list