blob: af1f7d8c1b7d556affc45f1a5d2fb50b5f49e198 [file] [log] [blame]
Lev Walkinee50d872019-01-25 01:08:20 -08001/*
Lev Walkinad7462c2019-02-10 01:13:48 -08002 * Copyright (c) 2005-2019 Lev Walkin <vlm@lionet.info>. All rights reserved.
Lev Walkinc0d04912005-02-25 12:52:27 +00003 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 *
13 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 * SUCH DAMAGE.
24 *
Lev Walkinc0d04912005-02-25 12:52:27 +000025 */
Lev Walkin41a1da62016-01-23 08:50:28 -080026#ifdef HAVE_CONFIG_H
Lev Walkin4efbfb72005-02-25 14:20:30 +000027#include <config.h>
28#endif
29
Lev Walkinc0d04912005-02-25 12:52:27 +000030#include <stdio.h>
31#include <stdlib.h>
32#include <string.h>
Lev Walkinee50d872019-01-25 01:08:20 -080033#include <stdint.h>
Lev Walkinad7462c2019-02-10 01:13:48 -080034#include <stdarg.h>
Lev Walkinc0d04912005-02-25 12:52:27 +000035#include <assert.h>
36#include <errno.h>
37
Lev Walkin41a1da62016-01-23 08:50:28 -080038#ifdef HAVE_UNISTD_H
Lev Walkin4efbfb72005-02-25 14:20:30 +000039#include <unistd.h>
40#endif
41
Lev Walkin41a1da62016-01-23 08:50:28 -080042#ifdef HAVE_SYS_TYPES_H
Lev Walkin4efbfb72005-02-25 14:20:30 +000043#include <sys/types.h>
44#endif
45
Lev Walkin41a1da62016-01-23 08:50:28 -080046#ifdef HAVE_SYS_STAT_H
47#include <sys/stat.h> /* for stat(2) */
Lev Walkinc0d04912005-02-25 12:52:27 +000048#endif
49
Lev Walkin41a1da62016-01-23 08:50:28 -080050#ifndef _WIN32
51#include <sysexits.h> /* for EX_USAGE & others */
52#else /* _WIN32 */
53#ifndef EX_USAGE
54#define EX_USAGE 64
Lev Walkinc0d04912005-02-25 12:52:27 +000055#endif
Lev Walkin41a1da62016-01-23 08:50:28 -080056#ifndef EX_DATAERR
57#define EX_DATAERR 65
Lev Walkinc0d04912005-02-25 12:52:27 +000058#endif
Lev Walkin41a1da62016-01-23 08:50:28 -080059#ifndef EX_SOFTWARE
60#define EX_SOFTWARE 70
Lev Walkinc0d04912005-02-25 12:52:27 +000061#endif
Lev Walkin41a1da62016-01-23 08:50:28 -080062#ifndef EX_OSERR
63#define EX_OSERR 71
Lev Walkin4ffc3df2005-02-25 12:54:08 +000064#endif
Lev Walkin41a1da62016-01-23 08:50:28 -080065#ifndef EX_OSFILE
66#define EX_OSFILE 72
Lev Walkin46499872006-03-06 13:05:34 +000067#endif
Lev Walkin41a1da62016-01-23 08:50:28 -080068#define snprintf _snprintf
69#endif /* _WIN32 */