diff options
author | Tim Riker <tim@rikers.org> | 2002-12-14 01:58:59 +0000 |
---|---|---|
committer | Tim Riker <tim@rikers.org> | 2002-12-14 01:58:59 +0000 |
commit | cf93274663877cb4d722a23d8c418470eb90332a (patch) | |
tree | a056983d1162502b58e2aca4c2ebf3c9c7b9c6be /libbb/qmodule.c | |
parent | 6fe1960ff5e4c7c993a8bc3add5361ee55323afe (diff) | |
download | busybox-w32-cf93274663877cb4d722a23d8c418470eb90332a.tar.gz busybox-w32-cf93274663877cb4d722a23d8c418470eb90332a.tar.bz2 busybox-w32-cf93274663877cb4d722a23d8c418470eb90332a.zip |
rmmod -a removed modules recursively
Diffstat (limited to 'libbb/qmodule.c')
-rw-r--r-- | libbb/qmodule.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/libbb/qmodule.c b/libbb/qmodule.c new file mode 100644 index 000000000..fd14d10fa --- /dev/null +++ b/libbb/qmodule.c | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | Copyright (C) 2002 Tim Riker <Tim@Rikers.org> | ||
3 | everyone seems to claim it someplace. ;-) | ||
4 | */ | ||
5 | |||
6 | #include <errno.h> | ||
7 | |||
8 | #include "libbb.h" | ||
9 | |||
10 | int query_module(const char *name, int which, void *buf, size_t bufsize, size_t *ret); | ||
11 | |||
12 | int my_query_module(const char *name, int which, void **buf, | ||
13 | size_t *bufsize, size_t *ret) | ||
14 | { | ||
15 | int my_ret; | ||
16 | |||
17 | my_ret = query_module(name, which, *buf, *bufsize, ret); | ||
18 | |||
19 | if (my_ret == -1 && errno == ENOSPC) { | ||
20 | *buf = xrealloc(*buf, *ret); | ||
21 | *bufsize = *ret; | ||
22 | |||
23 | my_ret = query_module(name, which, *buf, *bufsize, ret); | ||
24 | } | ||
25 | |||
26 | return my_ret; | ||
27 | } | ||
28 | |||
29 | |||