aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libbb.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/include/libbb.h b/include/libbb.h
index 0d09fef66..0a333dca8 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -874,7 +874,8 @@ typedef struct uni_stat_t {
874} uni_stat_t; 874} uni_stat_t;
875/* Returns a string with unprintable chars replaced by '?' or 875/* Returns a string with unprintable chars replaced by '?' or
876 * SUBST_WCHAR. This function is unicode-aware. */ 876 * SUBST_WCHAR. This function is unicode-aware. */
877const char* FAST_FUNC printable_string(uni_stat_t *stats, const char *str); 877const char* FAST_FUNC printable_string(const char *str);
878const char* FAST_FUNC printable_string2(uni_stat_t *stats, const char *str);
878/* Prints unprintable char ch as ^C or M-c to file 879/* Prints unprintable char ch as ^C or M-c to file
879 * (M-c is used only if ch is ORed with PRINTABLE_META), 880 * (M-c is used only if ch is ORed with PRINTABLE_META),
880 * else it is printed as-is (except for ch = 0x9b) */ 881 * else it is printed as-is (except for ch = 0x9b) */
@@ -2194,6 +2195,23 @@ extern const char bb_default_login_shell[] ALIGN1;
2194# define FB_0 "/dev/fb0" 2195# define FB_0 "/dev/fb0"
2195#endif 2196#endif
2196 2197
2198// storage helpers for mk*fs utilities
2199char BUG_wrong_field_size(void);
2200#define STORE_LE(field, value) \
2201do { \
2202 if (sizeof(field) == 4) \
2203 field = SWAP_LE32((uint32_t)(value)); \
2204 else if (sizeof(field) == 2) \
2205 field = SWAP_LE16((uint16_t)(value)); \
2206 else if (sizeof(field) == 1) \
2207 field = (uint8_t)(value); \
2208 else \
2209 BUG_wrong_field_size(); \
2210} while (0)
2211
2212#define FETCH_LE32(field) \
2213 (sizeof(field) == 4 ? SWAP_LE32(field) : BUG_wrong_field_size())
2214
2197 2215
2198#define ARRAY_SIZE(x) ((unsigned)(sizeof(x) / sizeof((x)[0]))) 2216#define ARRAY_SIZE(x) ((unsigned)(sizeof(x) / sizeof((x)[0])))
2199#define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)])) 2217#define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)]))