Initial commit to Gerrit
[profile/ivi/quota.git] / common.h
1 /*
2  *
3  *      Various things common for all utilities
4  *
5  */
6
7 #ifndef GUARD_COMMON_H
8 #define GUARD_COMMON_H
9
10 #ifndef __attribute__
11 # if !defined __GNUC__ || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__
12 #  define __attribute__(x)
13 # endif
14 #endif
15
16 #define MY_EMAIL "jack@suse.cz"
17
18 /* Name of current program for error reporting */
19 extern char *progname;
20
21 /* Finish programs being */
22 void __attribute ((noreturn)) die(int, char *, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
23
24 /* Print an error */
25 void errstr(char *, ...) __attribute__ ((__format__ (__printf__, 1, 2)));
26
27 /* If use_syslog is called, all error reports using errstr() and die() are
28  * written to syslog instead of stderr */
29 void use_syslog();
30
31 /* malloc() with error check */
32 void *smalloc(size_t);
33
34 /* realloc() with error check */
35 void *srealloc(void *, size_t);
36
37 /* Safe strncpy - always finishes string */
38 void sstrncpy(char *, const char *, size_t);
39
40 /* Safe strncat - always finishes string */
41 void sstrncat(char *, const char *, size_t);
42
43 /* Safe version of strdup() */
44 char *sstrdup(const char *s);
45
46 /* Print version string */
47 void version(void);
48
49 #endif /* GUARD_COMMON_H */