From 5fed2f9169fdd0585cc83ff0fa8210d97da77cb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20H=C3=A4rdeman?= Date: Sat, 19 May 2007 17:14:12 +0200 Subject: 80-col align code, add license headers --- utils.h | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'utils.h') diff --git a/utils.h b/utils.h index dac3bc4..76d6ca5 100644 --- a/utils.h +++ b/utils.h @@ -1,24 +1,67 @@ +/* + * Main functions of the program. + * + * Copyright (C) 2007 David Härdeman + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +/* For uint64_t */ #include +/* Controls the verbosity level for msg() */ extern int verbosity; + +/* Verbosity levels using stdout */ #define MSG_NORMAL 0 #define MSG_DEBUG 1 #define MSG_QUIET -1 +/* Verbosity levels using stderr */ #define MSG_ERROR -2 #define MSG_CRITICAL -3 +/* Prints messages to console according to the current verbosity */ int msg(int level, const char *fmt, ...); +/* Malloc which either succeeds or exits */ void *xmalloc(size_t size); + +/* Ditto for strdup */ char *xstrdup(const char *s); + +/* Human-readable printout of binary data */ void binary_print(const char *s, ssize_t len); + +/* Writes data to a file or exits on failure */ void xfwrite(const void *ptr, size_t size, FILE *stream); +/* Writes an int to a file, using len bytes, in bigendian order */ void write_int(uint64_t value, size_t len, FILE *to); + +/* Writes a binary string to a file */ void write_binary_string(const char *string, size_t len, FILE *to); + +/* Writes a normal C string to a file */ void write_string(const char *string, FILE *to); +/* Reads an int from a file, using len bytes, in bigendian order */ uint64_t read_int(char **from, size_t len, const char *max); + +/* Reads a binary string from a file */ char *read_binary_string(char **from, size_t len, const char *max); + +/* Reads a normal C string from a file */ char *read_string(char **from, const char *max); -- cgit v1.2.1