1.\" 2.\" Copyright (c) 2016 The DragonFly Project. All rights reserved. 3.\" 4.\" This code is derived from software contributed to The DragonFly Project 5.\" by Tomasz Konojacki <me@xenu.pl>. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 11.\" 1. Redistributions of source code must retain the above copyright 12.\" notice, this list of conditions and the following disclaimer. 13.\" 2. Redistributions in binary form must reproduce the above copyright 14.\" notice, this list of conditions and the following disclaimer in 15.\" the documentation and/or other materials provided with the 16.\" distribution. 17.\" 3. Neither the name of The DragonFly Project nor the names of its 18.\" contributors may be used to endorse or promote products derived 19.\" from this software without specific, prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 24.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 25.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 26.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 27.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 28.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 29.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 30.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 31.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32.\" SUCH DAMAGE. 33.\" 34.Dd January 30, 2016 35.Dt TIMESPEC_GET 3 36.Os 37.Sh NAME 38.Nm timespec_get 39.Nd Set specified timespec structure to a current time. 40.Sh LIBRARY 41.Lb libc 42.Sh SYNOPSIS 43.In time.h 44.Ft int 45.Fn timespec_get "struct timespec *ts" "int base" 46.Sh DESCRIPTION 47The function 48.Fn timespec_get 49takes two arguments, a pointer to a 50.Vt timespec 51structure and desired time base. 52The function sets structure pointed by the 53.Fa ts 54argument to hold current clock time, basing on time base specified in the 55.Fa base 56argument. 57Currently only the 58.Dv TIME_UTC 59base is supported. 60.Sh RETURN VALUES 61Upon successful completion, 62.Fn timespec_get 63will use its argument 64.Fa base 65as a return value. 66Otherwise, a value of 0 is returned and 67.Va errno 68is set to indicate the error. 69.Sh ERRORS 70.Bl -tag -width Er 71.It Bq Er EINVAL 72The 73.Fa base 74argument to 75.Fn timespec_get 76was invalid. 77.El 78.Pp 79The 80.Fn timespec_get 81function may also fail and set 82.Va errno 83for any of the errors specified for 84.Xr clock_gettime 2 . 85.Sh SEE ALSO 86.Xr clock_gettime 2 , 87.Xr time 3 88.Sh STANDARDS 89The 90.Fn timespec_get 91function conforms to 92.St -isoC-2011 . 93