diff options
author | Bernhard Reutner-Fischer | 2006-04-03 16:39:31 +0000 |
---|---|---|
committer | Bernhard Reutner-Fischer | 2006-04-03 16:39:31 +0000 |
commit | 421d9e59416850968707dfec7a665cb0211b8d1c (patch) | |
tree | cee92b2a5cd0ea7298aab569ed944fdeb59dbdf2 /include/libbb.h | |
parent | 101a470068a62a70489797a3fdfa5084af80106e (diff) | |
download | busybox-421d9e59416850968707dfec7a665cb0211b8d1c.zip busybox-421d9e59416850968707dfec7a665cb0211b8d1c.tar.gz |
- move buffer allocation schemes to libbb.h
- include the correct headers: applets need busybox.h while lib* need libbb.h
Diffstat (limited to 'include/libbb.h')
-rw-r--r-- | include/libbb.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/libbb.h b/include/libbb.h index f444084..64a235a 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -59,6 +59,24 @@ #define MAX(a,b) (((a)>(b))?(a):(b)) #endif +/* buffer allocation schemes */ +#ifdef CONFIG_FEATURE_BUFFERS_GO_ON_STACK +#define RESERVE_CONFIG_BUFFER(buffer,len) char buffer[len] +#define RESERVE_CONFIG_UBUFFER(buffer,len) unsigned char buffer[len] +#define RELEASE_CONFIG_BUFFER(buffer) ((void)0) +#else +#ifdef CONFIG_FEATURE_BUFFERS_GO_IN_BSS +#define RESERVE_CONFIG_BUFFER(buffer,len) static char buffer[len] +#define RESERVE_CONFIG_UBUFFER(buffer,len) static unsigned char buffer[len] +#define RELEASE_CONFIG_BUFFER(buffer) ((void)0) +#else +#define RESERVE_CONFIG_BUFFER(buffer,len) char *buffer=xmalloc(len) +#define RESERVE_CONFIG_UBUFFER(buffer,len) unsigned char *buffer=xmalloc(len) +#define RELEASE_CONFIG_BUFFER(buffer) free (buffer) +#endif +#endif + + extern void bb_show_usage(void) ATTRIBUTE_NORETURN ATTRIBUTE_EXTERNALLY_VISIBLE; extern void bb_error_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2))); extern void bb_error_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))); |