1*af901e68Snonaka /* $NetBSD: getsecs.c,v 1.1 2009/03/02 09:33:02 nonaka Exp $ */
2*af901e68Snonaka
3*af901e68Snonaka /*
4*af901e68Snonaka * Copyright (c) 2009 NONAKA Kimihiro <nonaka@netbsd.org>
5*af901e68Snonaka * All rights reserved.
6*af901e68Snonaka *
7*af901e68Snonaka * Redistribution and use in source and binary forms, with or without
8*af901e68Snonaka * modification, are permitted provided that the following conditions
9*af901e68Snonaka * are met:
10*af901e68Snonaka * 1. Redistributions of source code must retain the above copyright
11*af901e68Snonaka * notice, this list of conditions and the following disclaimer.
12*af901e68Snonaka * 2. Redistributions in binary form must reproduce the above copyright
13*af901e68Snonaka * notice, this list of conditions and the following disclaimer in the
14*af901e68Snonaka * documentation and/or other materials provided with the distribution.
15*af901e68Snonaka *
16*af901e68Snonaka * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17*af901e68Snonaka * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18*af901e68Snonaka * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19*af901e68Snonaka * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20*af901e68Snonaka * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21*af901e68Snonaka * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22*af901e68Snonaka * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23*af901e68Snonaka * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24*af901e68Snonaka * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25*af901e68Snonaka * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*af901e68Snonaka */
27*af901e68Snonaka
28*af901e68Snonaka
29*af901e68Snonaka #include "boot.h"
30*af901e68Snonaka #include "unixdev.h"
31*af901e68Snonaka
32*af901e68Snonaka #include <lib/libsa/net.h>
33*af901e68Snonaka
34*af901e68Snonaka #include "compat_linux.h"
35*af901e68Snonaka
36*af901e68Snonaka satime_t
getsecs(void)37*af901e68Snonaka getsecs(void)
38*af901e68Snonaka {
39*af901e68Snonaka
40*af901e68Snonaka return (satime_t)syscall(__NR_time, NULL);
41*af901e68Snonaka }
42*af901e68Snonaka
43*af901e68Snonaka int
sleep(int seconds)44*af901e68Snonaka sleep(int seconds)
45*af901e68Snonaka {
46*af901e68Snonaka int start;
47*af901e68Snonaka
48*af901e68Snonaka start = getsecs();
49*af901e68Snonaka while (getsecs() - start < seconds)
50*af901e68Snonaka continue;
51*af901e68Snonaka
52*af901e68Snonaka return 0;
53*af901e68Snonaka }
54