diff options
author | Denis Vlasenko | 2007-08-20 17:27:40 +0000 |
---|---|---|
committer | Denis Vlasenko | 2007-08-20 17:27:40 +0000 |
commit | 45946f8b513d9c292613ac08c3ddf4a89b915752 (patch) | |
tree | d6ea51887431e4261a114b95989950d1973d3227 /runit/runit_lib.c | |
parent | 63db27f9f4c0ec8b9abe3c32c8d699be0781ffd6 (diff) | |
download | busybox-45946f8b513d9c292613ac08c3ddf4a89b915752.zip busybox-45946f8b513d9c292613ac08c3ddf4a89b915752.tar.gz |
runit/*: get rid of tai[a] time abstraction, it's too bloaty.
text data bss dec hex filename
772537 1058 11092 784687 bf92f busybox.t0/busybox
772459 1058 11060 784577 bf8c1 busybox.t1/busybox
772326 1058 11028 784412 bf81c busybox.t2/busybox
772158 1058 10980 784196 bf744 busybox.t3/busybox
771490 1055 10988 783533 bf4ad busybox.t4/busybox
Diffstat (limited to 'runit/runit_lib.c')
-rw-r--r-- | runit/runit_lib.c | 147 |
1 files changed, 8 insertions, 139 deletions
diff --git a/runit/runit_lib.c b/runit/runit_lib.c index 295b45f..4b7950c 100644 --- a/runit/runit_lib.c +++ b/runit/runit_lib.c @@ -34,8 +34,6 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "libbb.h" #include "runit_lib.h" -/*** byte_chr.c ***/ - unsigned byte_chr(char *s,unsigned n,int c) { char ch; @@ -52,62 +50,14 @@ unsigned byte_chr(char *s,unsigned n,int c) return t - s; } - -/*** coe.c ***/ - int coe(int fd) { - return fcntl(fd,F_SETFD,FD_CLOEXEC); -} - - -/*** fmt_ptime.c ***/ - -void fmt_ptime30nul(char *s, struct taia *ta) { - struct tm *t; - unsigned long u; - - if (ta->sec.x < 4611686018427387914ULL) - return; /* impossible? */ - u = ta->sec.x -4611686018427387914ULL; - t = gmtime((time_t*)&u); - if (!t) - return; /* huh? */ - //fmt_ulong(s, 1900 + t->tm_year); - //s[4] = '-'; fmt_uint0(&s[5], t->tm_mon+1, 2); - //s[7] = '-'; fmt_uint0(&s[8], t->tm_mday, 2); - //s[10] = '_'; fmt_uint0(&s[11], t->tm_hour, 2); - //s[13] = ':'; fmt_uint0(&s[14], t->tm_min, 2); - //s[16] = ':'; fmt_uint0(&s[17], t->tm_sec, 2); - //s[19] = '.'; fmt_uint0(&s[20], ta->nano, 9); - sprintf(s, "%04u-%02u-%02u_%02u:%02u:%02u.%09u", - (unsigned)(1900 + t->tm_year), - (unsigned)(t->tm_mon+1), - (unsigned)(t->tm_mday), - (unsigned)(t->tm_hour), - (unsigned)(t->tm_min), - (unsigned)(t->tm_sec), - (unsigned)(ta->nano) - ); - /* 4+1 + 2+1 + 2+1 + 2+1 + 2+1 + 2+1 + 9 = */ - /* 5 + 3 + 3 + 3 + 3 + 3 + 9 = */ - /* 20 (up to '.' inclusive) + 9 (not including '\0') */ + return fcntl(fd, F_SETFD, FD_CLOEXEC); } -unsigned fmt_taia25(char *s, struct taia *t) { - static char pack[TAIA_PACK]; - - taia_pack(pack, t); - *s++ = '@'; - bin2hex(s, pack, 12); - return 25; -} - - -/*** tai_pack.c ***/ - +#ifdef UNUSED static /* as it isn't used anywhere else */ -void tai_pack(char *s,const struct tai *t) +void tai_pack(char *s, const struct tai *t) { uint64_t x; @@ -122,19 +72,6 @@ void tai_pack(char *s,const struct tai *t) s[0] = x; } - -#ifdef UNUSED -/*** tai_sub.c ***/ - -void tai_sub(struct tai *t, const struct tai *u, const struct tai *v) -{ - t->x = u->x - v->x; -} -#endif - - -/*** tai_unpack.c ***/ - void tai_unpack(const char *s,struct tai *t) { uint64_t x; @@ -151,8 +88,6 @@ void tai_unpack(const char *s,struct tai *t) } -/*** taia_add.c ***/ - void taia_add(struct taia *t,const struct taia *u,const struct taia *v) { t->sec.x = u->sec.x + v->sec.x; @@ -168,9 +103,6 @@ void taia_add(struct taia *t,const struct taia *u,const struct taia *v) } } - -/*** taia_less.c ***/ - int taia_less(const struct taia *t, const struct taia *u) { if (t->sec.x < u->sec.x) return 1; @@ -180,9 +112,6 @@ int taia_less(const struct taia *t, const struct taia *u) return t->atto < u->atto; } - -/*** taia_now.c ***/ - void taia_now(struct taia *t) { struct timeval now; @@ -192,9 +121,7 @@ void taia_now(struct taia *t) t->atto = 0; } - -/*** taia_pack.c ***/ - +/* UNUSED void taia_pack(char *s, const struct taia *t) { unsigned long x; @@ -213,9 +140,7 @@ void taia_pack(char *s, const struct taia *t) s[1] = x & 255; x >>= 8; s[0] = x; } - - -/*** taia_sub.c ***/ +*/ void taia_sub(struct taia *t, const struct taia *u, const struct taia *v) { @@ -235,11 +160,7 @@ void taia_sub(struct taia *t, const struct taia *u, const struct taia *v) } } - -/*** taia_uint.c ***/ - /* XXX: breaks tai encapsulation */ - void taia_uint(struct taia *t, unsigned s) { t->sec.x = s; @@ -247,16 +168,12 @@ void taia_uint(struct taia *t, unsigned s) t->atto = 0; } - -/*** iopause.c ***/ - static uint64_t taia2millisec(const struct taia *t) { return (t->sec.x * 1000) + (t->nano / 1000000); } - void iopause(iopause_fd *x, unsigned len, struct taia *deadline, struct taia *stamp) { int millisecs; @@ -282,59 +199,40 @@ void iopause(iopause_fd *x, unsigned len, struct taia *deadline, struct taia *st /* XXX: how to handle EAGAIN? are kernels really this dumb? */ /* XXX: how to handle EINVAL? when exactly can this happen? */ } - - -/*** lock_ex.c ***/ +#endif int lock_ex(int fd) { return flock(fd,LOCK_EX); } - -/*** lock_exnb.c ***/ - int lock_exnb(int fd) { return flock(fd,LOCK_EX | LOCK_NB); } - -/*** open_append.c ***/ - int open_append(const char *fn) { return open(fn, O_WRONLY|O_NDELAY|O_APPEND|O_CREAT, 0600); } - -/*** open_read.c ***/ - int open_read(const char *fn) { return open(fn, O_RDONLY|O_NDELAY); } - -/*** open_trunc.c ***/ - int open_trunc(const char *fn) { return open(fn,O_WRONLY | O_NDELAY | O_TRUNC | O_CREAT,0644); } - -/*** open_write.c ***/ - int open_write(const char *fn) { return open(fn, O_WRONLY|O_NDELAY); } - -/*** pmatch.c ***/ - -unsigned pmatch(const char *p, const char *s, unsigned len) { +unsigned pmatch(const char *p, const char *s, unsigned len) +{ for (;;) { char c = *p++; if (!c) return !len; @@ -373,32 +271,3 @@ unsigned pmatch(const char *p, const char *s, unsigned len) { } return 0; } - - -#ifdef UNUSED -/*** seek_set.c ***/ - -int seek_set(int fd,seek_pos pos) -{ - if (lseek(fd,(off_t) pos,SEEK_SET) == -1) return -1; return 0; -} - - -/*** str_chr.c ***/ - -// strchrnul? -unsigned str_chr(const char *s,int c) -{ - char ch; - const char *t; - - ch = c; - t = s; - for (;;) { - if (!*t) break; - if (*t == ch) break; - ++t; - } - return t - s; -} -#endif |