mirror of
https://github.com/yarrick/iodine.git
synced 2025-04-23 16:17:25 +02:00
Compare commits
1 commit
Author | SHA1 | Date | |
---|---|---|---|
|
607b9d3be1 |
28 changed files with 51 additions and 156 deletions
28
.github/workflows/freebsd.yml
vendored
28
.github/workflows/freebsd.yml
vendored
|
@ -1,28 +0,0 @@
|
||||||
name: freebsd
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ master ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ master ]
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: make
|
|
||||||
uses: vmactions/freebsd-vm@v1.0.8
|
|
||||||
with:
|
|
||||||
prepare: |
|
|
||||||
pkg install -y \
|
|
||||||
devel/check \
|
|
||||||
devel/git \
|
|
||||||
devel/pkgconf
|
|
||||||
run: |
|
|
||||||
make
|
|
||||||
make test
|
|
5
.github/workflows/macos.yml
vendored
5
.github/workflows/macos.yml
vendored
|
@ -6,16 +6,13 @@ on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v2
|
||||||
- name: make
|
- name: make
|
||||||
run: make
|
run: make
|
||||||
- name: install check
|
- name: install check
|
||||||
|
|
28
.github/workflows/openbsd.yml
vendored
28
.github/workflows/openbsd.yml
vendored
|
@ -1,28 +0,0 @@
|
||||||
name: openbsd
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ master ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ master ]
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: make
|
|
||||||
uses: vmactions/openbsd-vm@v1.0.8
|
|
||||||
with:
|
|
||||||
prepare: |
|
|
||||||
pkg_add \
|
|
||||||
check \
|
|
||||||
git \
|
|
||||||
pkgconf
|
|
||||||
run: |
|
|
||||||
make
|
|
||||||
make test
|
|
7
.github/workflows/ubuntu.yml
vendored
7
.github/workflows/ubuntu.yml
vendored
|
@ -6,16 +6,13 @@ on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v2
|
||||||
- name: make
|
- name: make
|
||||||
run: make
|
run: make
|
||||||
- name: install check
|
- name: install check
|
||||||
|
@ -28,7 +25,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v2
|
||||||
- uses: nttld/setup-ndk@v1
|
- uses: nttld/setup-ndk@v1
|
||||||
with:
|
with:
|
||||||
ndk-version: r21e
|
ndk-version: r21e
|
||||||
|
|
5
.github/workflows/windows.yml
vendored
5
.github/workflows/windows.yml
vendored
|
@ -6,9 +6,6 @@ on:
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
|
@ -18,7 +15,7 @@ jobs:
|
||||||
shell: msys2 {0}
|
shell: msys2 {0}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v2
|
||||||
- uses: msys2/setup-msys2@v2
|
- uses: msys2/setup-msys2@v2
|
||||||
with:
|
with:
|
||||||
msystem: MINGW64
|
msystem: MINGW64
|
||||||
|
|
|
@ -1,15 +1,10 @@
|
||||||
|
|
||||||
iodine - https://code.kryo.se/iodine
|
iodine - https://code.kryo.se/iodine
|
||||||
|
|
||||||
************************************
|
***********************************
|
||||||
|
|
||||||
CHANGES:
|
CHANGES:
|
||||||
|
|
||||||
master:
|
|
||||||
- Changed deprecated tzsetwall() to tzset() (only used by FreeBSD),
|
|
||||||
patch by Pouria Mousavizadeh Tehrani.
|
|
||||||
- Now builds on macOS even without if_utun.h (pre 10.6).
|
|
||||||
|
|
||||||
2023-04-17: 0.8.0 "Burning Snowman"
|
2023-04-17: 0.8.0 "Burning Snowman"
|
||||||
- Mac OS X: Support native utun VPN devices. Patch by
|
- Mac OS X: Support native utun VPN devices. Patch by
|
||||||
Peter Sagerson, ported from OpenVPN by Catalin Patulea.
|
Peter Sagerson, ported from OpenVPN by Catalin Patulea.
|
||||||
|
|
|
@ -11,13 +11,11 @@
|
||||||
|
|
||||||
LOCAL_PATH:= $(call my-dir)
|
LOCAL_PATH:= $(call my-dir)
|
||||||
|
|
||||||
HEAD_COMMIT = `git rev-parse --short HEAD`
|
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
LOCAL_MODULE := iodine
|
LOCAL_MODULE := iodine
|
||||||
LOCAL_SRC_FILES := tun.c dns.c read.c encoding.c login.c base32.c base64.c base64u.c base128.c md5.c common.c iodine.c client.c util.c
|
LOCAL_SRC_FILES := tun.c dns.c read.c encoding.c login.c base32.c base64.c base64u.c base128.c md5.c common.c iodine.c client.c util.c
|
||||||
LOCAL_CFLAGS := -c -DANDROID -DLINUX -DIFCONFIGPATH=\"/system/bin/\" -Wall -DGITREVISION=\"$(HEAD_COMMIT)\"
|
LOCAL_CFLAGS := -c -DANDROID -DLINUX -DIFCONFIGPATH=\"/system/bin/\" -Wall
|
||||||
LOCAL_LDLIBS := -lz
|
LOCAL_LDLIBS := -lz
|
||||||
LOCAL_CFLAGS += -fPIE
|
LOCAL_CFLAGS += -fPIE
|
||||||
LOCAL_LDFLAGS += -fPIE -pie
|
LOCAL_LDFLAGS += -fPIE -pie
|
||||||
|
|
|
@ -11,13 +11,11 @@
|
||||||
|
|
||||||
LOCAL_PATH:= $(call my-dir)
|
LOCAL_PATH:= $(call my-dir)
|
||||||
|
|
||||||
HEAD_COMMIT = `git rev-parse --short HEAD`
|
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
LOCAL_MODULE := iodine
|
LOCAL_MODULE := iodine
|
||||||
LOCAL_SRC_FILES := tun.c dns.c read.c encoding.c login.c base32.c base64.c base64u.c base128.c md5.c common.c iodine.c client.c util.c
|
LOCAL_SRC_FILES := tun.c dns.c read.c encoding.c login.c base32.c base64.c base64u.c base128.c md5.c common.c iodine.c client.c util.c
|
||||||
LOCAL_CFLAGS := -c -DANDROID -DLINUX -DIFCONFIGPATH=\"/system/bin/\" -Wall -DGITREVISION=\"$(HEAD_COMMIT)\"
|
LOCAL_CFLAGS := -c -DANDROID -DLINUX -DIFCONFIGPATH=\"/system/bin/\" -Wall
|
||||||
LOCAL_LDLIBS := -lz
|
LOCAL_LDLIBS := -lz
|
||||||
|
|
||||||
include $(BUILD_EXECUTABLE)
|
include $(BUILD_EXECUTABLE)
|
||||||
|
|
|
@ -6,11 +6,10 @@ SERVER = ../bin/iodined
|
||||||
|
|
||||||
OS = `echo $(TARGETOS) | tr "a-z" "A-Z"`
|
OS = `echo $(TARGETOS) | tr "a-z" "A-Z"`
|
||||||
ARCH = `uname -m`
|
ARCH = `uname -m`
|
||||||
HEAD_COMMIT = `git rev-parse --short HEAD`
|
|
||||||
|
|
||||||
LIBPATH = -L.
|
LIBPATH = -L.
|
||||||
LDFLAGS += -lz `sh osflags $(TARGETOS) link` $(LIBPATH)
|
LDFLAGS += -lz `sh osflags $(TARGETOS) link` $(LIBPATH)
|
||||||
CFLAGS += -std=c99 -c -g -Wall -D$(OS) -pedantic `sh osflags $(TARGETOS) cflags` -DGITREVISION=\"$(HEAD_COMMIT)\"
|
CFLAGS += -std=c99 -c -g -Wall -D$(OS) -pedantic `sh osflags $(TARGETOS) cflags`
|
||||||
CFLAGS += -Wstrict-prototypes -Wtype-limits -Wmissing-declarations -Wmissing-prototypes
|
CFLAGS += -Wstrict-prototypes -Wtype-limits -Wmissing-declarations -Wmissing-prototypes
|
||||||
|
|
||||||
all: stateos $(CLIENT) $(SERVER)
|
all: stateos $(CLIENT) $(SERVER)
|
||||||
|
|
10
src/client.c
10
src/client.c
|
@ -103,7 +103,7 @@ static long send_query_recvcnt = 0;
|
||||||
static int hostname_maxlen = 0xFF;
|
static int hostname_maxlen = 0xFF;
|
||||||
|
|
||||||
void
|
void
|
||||||
client_init(void)
|
client_init()
|
||||||
{
|
{
|
||||||
running = 1;
|
running = 1;
|
||||||
rand_seed = ((unsigned int) rand()) & 0xFFFF;
|
rand_seed = ((unsigned int) rand()) & 0xFFFF;
|
||||||
|
@ -124,13 +124,13 @@ client_init(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
client_stop(void)
|
client_stop()
|
||||||
{
|
{
|
||||||
running = 0;
|
running = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum connection
|
enum connection
|
||||||
client_get_conn(void)
|
client_get_conn()
|
||||||
{
|
{
|
||||||
return conn;
|
return conn;
|
||||||
}
|
}
|
||||||
|
@ -175,7 +175,7 @@ client_set_qtype(char *qtype)
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
client_get_qtype(void)
|
client_get_qtype()
|
||||||
{
|
{
|
||||||
char *c = "UNDEFINED";
|
char *c = "UNDEFINED";
|
||||||
|
|
||||||
|
@ -225,7 +225,7 @@ client_set_hostname_maxlen(int i)
|
||||||
}
|
}
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
client_get_raw_addr(void)
|
client_get_raw_addr()
|
||||||
{
|
{
|
||||||
return format_addr(&raw_serv, raw_serv_len);
|
return format_addr(&raw_serv, raw_serv_len);
|
||||||
}
|
}
|
||||||
|
|
14
src/common.c
14
src/common.c
|
@ -57,7 +57,7 @@
|
||||||
const unsigned char raw_header[RAW_HDR_LEN] = { 0x10, 0xd1, 0x9e, 0x00 };
|
const unsigned char raw_header[RAW_HDR_LEN] = { 0x10, 0xd1, 0x9e, 0x00 };
|
||||||
|
|
||||||
/* daemon(3) exists only in 4.4BSD or later, and in GNU libc */
|
/* daemon(3) exists only in 4.4BSD or later, and in GNU libc */
|
||||||
#if !defined(ANDROID) && !defined(WINDOWS32) && !(defined(BSD) && (BSD >= 199306)) && !defined(__GLIBC__) && !defined(__HAIKU__)
|
#if !defined(ANDROID) && !defined(WINDOWS32) && !(defined(BSD) && (BSD >= 199306)) && !defined(__GLIBC__)
|
||||||
static int daemon(int nochdir, int noclose)
|
static int daemon(int nochdir, int noclose)
|
||||||
{
|
{
|
||||||
int fd, i;
|
int fd, i;
|
||||||
|
@ -142,7 +142,6 @@ get_addr(char *host, int port, int addr_family, int flags, struct sockaddr_stora
|
||||||
struct addrinfo hints, *addr;
|
struct addrinfo hints, *addr;
|
||||||
int res;
|
int res;
|
||||||
char portnum[8];
|
char portnum[8];
|
||||||
int addrlen;
|
|
||||||
|
|
||||||
memset(portnum, 0, sizeof(portnum));
|
memset(portnum, 0, sizeof(portnum));
|
||||||
snprintf(portnum, sizeof(portnum) - 1, "%d", port);
|
snprintf(portnum, sizeof(portnum) - 1, "%d", port);
|
||||||
|
@ -159,15 +158,14 @@ get_addr(char *host, int port, int addr_family, int flags, struct sockaddr_stora
|
||||||
hints.ai_protocol = IPPROTO_UDP;
|
hints.ai_protocol = IPPROTO_UDP;
|
||||||
|
|
||||||
res = getaddrinfo(host, portnum, &hints, &addr);
|
res = getaddrinfo(host, portnum, &hints, &addr);
|
||||||
if (res != 0) {
|
if (res == 0) {
|
||||||
return -1;
|
int addrlen = addr->ai_addrlen;
|
||||||
}
|
|
||||||
|
|
||||||
addrlen = addr->ai_addrlen;
|
|
||||||
/* Grab first result */
|
/* Grab first result */
|
||||||
memcpy(out, addr->ai_addr, addr->ai_addrlen);
|
memcpy(out, addr->ai_addr, addr->ai_addrlen);
|
||||||
freeaddrinfo(addr);
|
freeaddrinfo(addr);
|
||||||
return addrlen;
|
return addrlen;
|
||||||
|
}
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -278,7 +276,7 @@ do_pidfile(char *pidfile)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
do_detach(void)
|
do_detach()
|
||||||
{
|
{
|
||||||
#ifndef WINDOWS32
|
#ifndef WINDOWS32
|
||||||
fprintf(stderr, "Detaching from terminal...\n");
|
fprintf(stderr, "Detaching from terminal...\n");
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
|
|
||||||
int dnsc_use_edns0 = 1;
|
int dnsc_use_edns0 = 1;
|
||||||
|
|
||||||
#define CHECKLEN(x) if (buflen < (x) + (size_t)(p-buf)) return 0
|
#define CHECKLEN(x) if (buflen < (x) + (unsigned)(p-buf)) return 0
|
||||||
|
|
||||||
int dns_encode(char *buf, size_t buflen, struct query *q, qr_t qr,
|
int dns_encode(char *buf, size_t buflen, struct query *q, qr_t qr,
|
||||||
const char *data, size_t datalen)
|
const char *data, size_t datalen)
|
||||||
|
@ -403,7 +403,7 @@ unsigned short dns_get_id(char *packet, size_t packetlen)
|
||||||
return ntohs(header->id);
|
return ntohs(header->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define CHECKLEN(x) if (packetlen < (x) + (size_t)(data-packet)) return 0
|
#define CHECKLEN(x) if (packetlen < (x) + (unsigned)(data-packet)) return 0
|
||||||
|
|
||||||
int dns_decode(char *buf, size_t buflen, struct query *q, qr_t qr, char *packet,
|
int dns_decode(char *buf, size_t buflen, struct query *q, qr_t qr, char *packet,
|
||||||
size_t packetlen)
|
size_t packetlen)
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
static struct fw_query fwq[FW_QUERY_CACHE_SIZE];
|
static struct fw_query fwq[FW_QUERY_CACHE_SIZE];
|
||||||
static int fwq_ix;
|
static int fwq_ix;
|
||||||
|
|
||||||
void fw_query_init(void)
|
void fw_query_init()
|
||||||
{
|
{
|
||||||
memset(fwq, 0, sizeof(struct fw_query) * FW_QUERY_CACHE_SIZE);
|
memset(fwq, 0, sizeof(struct fw_query) * FW_QUERY_CACHE_SIZE);
|
||||||
fwq_ix = 0;
|
fwq_ix = 0;
|
||||||
|
|
|
@ -116,7 +116,7 @@ static inline void usage(void)
|
||||||
static void version(void)
|
static void version(void)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "iodine IP over DNS tunneling client\n"
|
fprintf(stderr, "iodine IP over DNS tunneling client\n"
|
||||||
"Git version: %s\n", GITREVISION);
|
"version 0.8.0 from 2023-04-17\n");
|
||||||
|
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -2332,7 +2332,7 @@ static void version(void)
|
||||||
{
|
{
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"iodine IP over DNS tunneling server\n"
|
"iodine IP over DNS tunneling server\n"
|
||||||
"Git version: %s\n", GITREVISION);
|
"version 0.8.0 from 2023-04-17\n");
|
||||||
|
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
@ -2754,7 +2754,7 @@ main(int argc, char **argv)
|
||||||
do_pidfile(pidfile);
|
do_pidfile(pidfile);
|
||||||
|
|
||||||
#ifdef FREEBSD
|
#ifdef FREEBSD
|
||||||
tzset();
|
tzsetwall();
|
||||||
#endif
|
#endif
|
||||||
#ifndef WINDOWS32
|
#ifndef WINDOWS32
|
||||||
openlog(__progname, LOG_NDELAY, LOG_DAEMON);
|
openlog(__progname, LOG_NDELAY, LOG_DAEMON);
|
||||||
|
|
|
@ -13,14 +13,14 @@ link)
|
||||||
echo '-lsocket -lbind -lbsd';
|
echo '-lsocket -lbind -lbsd';
|
||||||
;;
|
;;
|
||||||
Haiku)
|
Haiku)
|
||||||
echo '-lnetwork -lbsd';
|
echo '-lnetwork';
|
||||||
;;
|
;;
|
||||||
windows32)
|
windows32)
|
||||||
echo '-lws2_32 -liphlpapi';
|
echo '-lws2_32 -liphlpapi';
|
||||||
;;
|
;;
|
||||||
Linux)
|
Linux)
|
||||||
FLAGS="";
|
FLAGS="";
|
||||||
"$PKG_CONFIG" --exists libselinux && FLAGS="$FLAGS $($PKG_CONFIG --libs libselinux)";
|
[ -e /usr/include/selinux/selinux.h ] && FLAGS="$FLAGS -lselinux";
|
||||||
"$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd-daemon)";
|
"$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd-daemon)";
|
||||||
"$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd)";
|
"$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS $($PKG_CONFIG --libs libsystemd)";
|
||||||
echo $FLAGS;
|
echo $FLAGS;
|
||||||
|
@ -35,15 +35,12 @@ cflags)
|
||||||
BeOS)
|
BeOS)
|
||||||
echo '-Dsocklen_t=int';
|
echo '-Dsocklen_t=int';
|
||||||
;;
|
;;
|
||||||
Haiku)
|
|
||||||
echo '-D_DEFAULT_SOURCE';
|
|
||||||
;;
|
|
||||||
Darwin)
|
Darwin)
|
||||||
echo '-D__APPLE_USE_RFC_3542';
|
echo '-D__APPLE_USE_RFC_3542';
|
||||||
;;
|
;;
|
||||||
Linux)
|
Linux)
|
||||||
FLAGS="-D_GNU_SOURCE"
|
FLAGS="-D_GNU_SOURCE"
|
||||||
"$PKG_CONFIG" --exists libselinux && FLAGS="$FLAGS -DHAVE_SETCON";
|
[ -e /usr/include/selinux/selinux.h ] && FLAGS="$FLAGS -DHAVE_SETCON";
|
||||||
"$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS -DHAVE_SYSTEMD";
|
"$PKG_CONFIG" --exists libsystemd-daemon && FLAGS="$FLAGS -DHAVE_SYSTEMD";
|
||||||
"$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS -DHAVE_SYSTEMD";
|
"$PKG_CONFIG" --exists libsystemd && FLAGS="$FLAGS -DHAVE_SYSTEMD";
|
||||||
echo $FLAGS;
|
echo $FLAGS;
|
||||||
|
|
|
@ -31,9 +31,7 @@
|
||||||
#include <sys/kern_control.h>
|
#include <sys/kern_control.h>
|
||||||
#include <sys/sys_domain.h>
|
#include <sys/sys_domain.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
/* Inline used parts of if_utun.h to compile without it. */
|
#include <net/if_utun.h>
|
||||||
#define UTUN_CONTROL_NAME "com.apple.net.utun_control"
|
|
||||||
#define UTUN_OPT_IFNAME 2
|
|
||||||
#include <netinet/ip.h>
|
#include <netinet/ip.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -119,7 +119,7 @@ START_TEST(test_base32_blksize)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_base32_create_tests(void)
|
test_base32_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,7 @@ START_TEST(test_base64_blksize)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_base64_create_tests(void)
|
test_base64_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -280,30 +280,8 @@ START_TEST(test_parse_format_ipv4_mapped_ipv6)
|
||||||
}
|
}
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
START_TEST(test_get_addr_err)
|
|
||||||
{
|
|
||||||
char *host = "192.168.2.10";
|
|
||||||
struct sockaddr_storage addr;
|
|
||||||
int addr_len;
|
|
||||||
int flags = AI_PASSIVE;
|
|
||||||
|
|
||||||
/* Invalid host */
|
|
||||||
addr_len = get_addr(NULL, -1, flags, 0, &addr);
|
|
||||||
ck_assert(addr_len == -1);
|
|
||||||
/* Invalid port */
|
|
||||||
addr_len = get_addr(host, -1, flags, 0, &addr);
|
|
||||||
ck_assert(addr_len == -1);
|
|
||||||
/* Invalid flag */
|
|
||||||
addr_len = get_addr(host, 53, flags | 0xFFF, 0, &addr);
|
|
||||||
ck_assert(addr_len == -1);
|
|
||||||
/* Invalid addr */
|
|
||||||
addr_len = get_addr(host, 53, flags, 0, (struct sockaddr_storage *)NULL);
|
|
||||||
ck_assert(addr_len == -1);
|
|
||||||
}
|
|
||||||
END_TEST
|
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_common_create_tests(void)
|
test_common_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
int sock;
|
int sock;
|
||||||
|
@ -317,7 +295,6 @@ test_common_create_tests(void)
|
||||||
tcase_add_test(tc, test_query_datalen_wild);
|
tcase_add_test(tc, test_query_datalen_wild);
|
||||||
tcase_add_test(tc, test_parse_format_ipv4);
|
tcase_add_test(tc, test_parse_format_ipv4);
|
||||||
tcase_add_test(tc, test_parse_format_ipv4_listen_all);
|
tcase_add_test(tc, test_parse_format_ipv4_listen_all);
|
||||||
tcase_add_test(tc, test_get_addr_err);
|
|
||||||
|
|
||||||
/* Tests require IPv6 support */
|
/* Tests require IPv6 support */
|
||||||
sock = socket(AF_INET6, SOCK_DGRAM, IPPROTO_UDP);
|
sock = socket(AF_INET6, SOCK_DGRAM, IPPROTO_UDP);
|
||||||
|
|
|
@ -250,7 +250,7 @@ dump_packet(char *buf, size_t len)
|
||||||
}
|
}
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_dns_create_tests(void)
|
test_dns_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -93,7 +93,7 @@ START_TEST(test_build_hostname)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_encoding_create_tests(void)
|
test_encoding_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ START_TEST(test_fw_query_edge)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_fw_query_create_tests(void)
|
test_fw_query_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,7 @@ START_TEST(test_login_hash_short)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_login_create_tests(void)
|
test_login_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -270,7 +270,7 @@ END_TEST
|
||||||
|
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_read_create_tests(void)
|
test_read_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
#include "test.h"
|
#include "test.h"
|
||||||
|
|
||||||
int
|
int
|
||||||
main(void)
|
main()
|
||||||
{
|
{
|
||||||
SRunner *runner;
|
SRunner *runner;
|
||||||
Suite *iodine;
|
Suite *iodine;
|
||||||
|
|
18
tests/test.h
18
tests/test.h
|
@ -18,15 +18,15 @@
|
||||||
#ifndef __TEST_H__
|
#ifndef __TEST_H__
|
||||||
#define __TEST_H__
|
#define __TEST_H__
|
||||||
|
|
||||||
TCase *test_base32_create_tests(void);
|
TCase *test_base32_create_tests();
|
||||||
TCase *test_base64_create_tests(void);
|
TCase *test_base64_create_tests();
|
||||||
TCase *test_common_create_tests(void);
|
TCase *test_common_create_tests();
|
||||||
TCase *test_dns_create_tests(void);
|
TCase *test_dns_create_tests();
|
||||||
TCase *test_encoding_create_tests(void);
|
TCase *test_encoding_create_tests();
|
||||||
TCase *test_read_create_tests(void);
|
TCase *test_read_create_tests();
|
||||||
TCase *test_login_create_tests(void);
|
TCase *test_login_create_tests();
|
||||||
TCase *test_user_create_tests(void);
|
TCase *test_user_create_tests();
|
||||||
TCase *test_fw_query_create_tests(void);
|
TCase *test_fw_query_create_tests();
|
||||||
|
|
||||||
char *va_str(const char *, ...);
|
char *va_str(const char *, ...);
|
||||||
|
|
||||||
|
|
|
@ -170,7 +170,7 @@ START_TEST(test_find_available_user_small_net)
|
||||||
END_TEST
|
END_TEST
|
||||||
|
|
||||||
TCase *
|
TCase *
|
||||||
test_user_create_tests(void)
|
test_user_create_tests()
|
||||||
{
|
{
|
||||||
TCase *tc;
|
TCase *tc;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue