1 /* 2 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 3 * Use is subject to license terms. 4 */ 5 6 /* 7 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8 */ 9 10 #ifndef _SYS_TIMEB_H 11 #define _SYS_TIMEB_H 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 17 #include <sys/types.h> 18 #include <sys/feature_tests.h> 19 20 /* 21 * Copyright (c) 1991, 1993 22 * The Regents of the University of California. All rights reserved. 23 * (c) UNIX System Laboratories, Inc. 24 * All or some portions of this file are derived from material licensed 25 * to the University of California by American Telephone and Telegraph 26 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 27 * the permission of UNIX System Laboratories, Inc. 28 * 29 * Redistribution and use in source and binary forms, with or without 30 * modification, are permitted provided that the following conditions 31 * are met: 32 * 1. Redistributions of source code must retain the above copyright 33 * notice, this list of conditions and the following disclaimer. 34 * 2. Redistributions in binary form must reproduce the above copyright 35 * notice, this list of conditions and the following disclaimer in the 36 * documentation and/or other materials provided with the distribution. 37 * 3. All advertising materials mentioning features or use of this software 38 * must display the following acknowledgement: 39 * This product includes software developed by the University of 40 * California, Berkeley and its contributors. 41 * 4. Neither the name of the University nor the names of its contributors 42 * may be used to endorse or promote products derived from this software 43 * without specific prior written permission. 44 * 45 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 46 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 47 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 48 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 49 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 50 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 51 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 52 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 53 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 54 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 55 * SUCH DAMAGE. 56 */ 57 58 59 /* 60 * NOTE: This lives in sys/timeb.h due to standards requirements. 61 * The actual function is not a system call, but a libc function. Hence 62 * this header should never be included into kernel modules. Presumably 63 * the header shouldn't be included unless ftime() is desired, since it 64 * defines nothing else, but be pedantic. 65 */ 66 67 #ifndef _KERNEL 68 69 #if (!defined(_STRICT_SYMBOLS)) || (defined(_XPG4_2) && !defined(_XPG7)) 70 struct timeb { 71 time_t time; /* seconds since the Epoch */ 72 unsigned short millitm; /* + milliseconds since the Epoch */ 73 short timezone; /* minutes west of CUT */ 74 short dstflag; /* DST == non-zero */ 75 }; 76 77 extern int ftime(struct timeb *); 78 #endif 79 80 #endif /* _KERNEL */ 81 82 #ifdef __cplusplus 83 } 84 #endif 85 86 #endif /* _SYS_TIMEB_H */