diff options
Diffstat (limited to 'osx/util.h')
-rw-r--r-- | osx/util.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/osx/util.h b/osx/util.h new file mode 100644 index 0000000..50d98ff --- /dev/null +++ b/osx/util.h @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2010 Marco Peereboom <marco@peereboom.us> + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#define FPARSELN_UNESCESC 0x01 +#define FPARSELN_UNESCCONT 0x02 +#define FPARSELN_UNESCCOMM 0x04 +#define FPARSELN_UNESCREST 0x08 +#define FPARSELN_UNESCALL 0x0f + +#if !__has_builtin(strlcpy) +size_t strlcpy(char *, const char *, size_t); +#endif +#if !__has_builtin(strlcat) +size_t strlcat(char *, const char *, size_t); +#endif + +char *fgetln(FILE *, size_t *); +char *fparseln(FILE *, size_t *, size_t *, const char [3], int); + +long long strtonum(const char *, long long, long long, const char **); + +int fmt_scaled(long long number, char *result); + +#ifndef WAIT_ANY +#define WAIT_ANY (-1) +#endif + +/* there is no limit to ulrich drepper's crap */ +#ifndef TAILQ_END +#define TAILQ_END(head) NULL +#endif + +#ifndef TAILQ_FOREACH_SAFE +#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ + for ((var) = TAILQ_FIRST(head); \ + (var) != TAILQ_END(head) && \ + ((tvar) = TAILQ_NEXT(var, field), 1); \ + (var) = (tvar)) +#endif + +/* + * fmt_scaled(3) specific flags. (from OpenBSD util.h) + */ +#define FMT_SCALED_STRSIZE 7 /* minus sign, 4 digits, suffix, null byte */ + +int getpeereid(int s, uid_t *euid, gid_t *gid); + |