(root)/
strace-6.5/
src/
print_time.c
       1  /*
       2   * Copyright (c) 2015-2016 Dmitry V. Levin <ldv@strace.io>
       3   * Copyright (c) 2015-2023 The strace developers.
       4   * All rights reserved.
       5   *
       6   * SPDX-License-Identifier: LGPL-2.1-or-later
       7   */
       8  
       9  #include "defs.h"
      10  
      11  typedef kernel_ulong_t kernel_time_t;
      12  
      13  #include DEF_MPERS_TYPE(kernel_time_t)
      14  
      15  #include MPERS_DEFS
      16  
      17  SYS_FUNC(time)
      18  {
      19  	if (exiting(tcp)) {
      20  		kernel_time_t t;
      21  
      22  		if (!umove_or_printaddr(tcp, tcp->u_arg[0], &t)) {
      23  			tprint_indirect_begin();
      24  			PRINT_VAL_D(t);
      25  			tprints_comment(sprinttime(t));
      26  			tprint_indirect_end();
      27  		}
      28  
      29  		if (!syserror(tcp)) {
      30  			tcp->auxstr = sprinttime((kernel_time_t) tcp->u_rval);
      31  
      32  			return RVAL_STR;
      33  		}
      34  	}
      35  
      36  	return 0;
      37  }