summaryrefslogtreecommitdiff
path: root/pjnath
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2008-03-20 19:21:27 +0000
committerBenny Prijono <bennylp@teluu.com>2008-03-20 19:21:27 +0000
commit619fc98f231881529092bf502d84ccbef0d4db76 (patch)
tree40364fc2238ce7e31eca91cfa019411c5eff722a /pjnath
parentc2af691caa819333a261757e9f02e761203d8592 (diff)
More ticket #485: updated Makefiles and fixed compilation warnings with gcc
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1882 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjnath')
-rw-r--r--pjnath/build/Makefile54
-rw-r--r--pjnath/src/pjnath/turn_session.c1
-rw-r--r--pjnath/src/pjturn-client/client_main.c42
-rw-r--r--pjnath/src/pjturn-srv/auth.c4
-rw-r--r--pjnath/src/pjturn-srv/auth.h2
-rw-r--r--pjnath/src/pjturn-srv/main.c5
6 files changed, 41 insertions, 67 deletions
diff --git a/pjnath/build/Makefile b/pjnath/build/Makefile
index 393562f5..9dd0b2db 100644
--- a/pjnath/build/Makefile
+++ b/pjnath/build/Makefile
@@ -31,7 +31,8 @@ export _LDFLAGS := $(subst /,$(HOST_PSEP),$(PJNATH_LIB)) \
export PJNATH_SRCDIR = ../src/pjnath
export PJNATH_OBJS += $(OS_OBJS) $(M_OBJS) $(CC_OBJS) $(HOST_OBJS) \
errno.o ice_session.o ice_strans.o nat_detect.o stun_auth.o \
- stun_msg.o stun_msg_dump.o stun_session.o stun_transaction.o
+ stun_msg.o stun_msg_dump.o stun_session.o stun_transaction.o \
+ turn_session.o turn_udp.o
export PJNATH_CFLAGS += $(_CFLAGS)
###############################################################################
@@ -45,23 +46,23 @@ export PJNATH_TEST_EXE:=../bin/pjnath-test-$(TARGET_NAME)$(HOST_EXE)
###############################################################################
-# Defines for building test client application
+# Defines for building TURN client application
#
-export PJSTUN_CLIENT_SRCDIR = ../src/pjstun-client
-export PJSTUN_CLIENT_OBJS += client_main.o
-export PJSTUN_CLIENT_CFLAGS += $(_CFLAGS)
-export PJSTUN_CLIENT_LDFLAGS += $(_LDFLAGS)
-export PJSTUN_CLIENT_EXE:=../bin/pjstun-client-$(TARGET_NAME)$(HOST_EXE)
+export PJTURN_CLIENT_SRCDIR = ../src/pjturn-client
+export PJTURN_CLIENT_OBJS += client_main.o
+export PJTURN_CLIENT_CFLAGS += $(_CFLAGS)
+export PJTURN_CLIENT_LDFLAGS += $(_LDFLAGS)
+export PJTURN_CLIENT_EXE:=../bin/pjturn-client-$(TARGET_NAME)$(HOST_EXE)
###############################################################################
-# Defines for building test server application
+# Defines for building TURN server application
#
-export PJSTUN_SRV_TEST_SRCDIR = ../src/pjstun-srv-test
-export PJSTUN_SRV_TEST_OBJS += bind_usage.o server.o turn_usage.o usage.o \
+export PJTURN_SRV_SRCDIR = ../src/pjturn-srv
+export PJTURN_SRV_OBJS += allocation.o auth.o listener_udp.o server.o \
main.o
-export PJSTUN_SRV_TEST_CFLAGS += $(_CFLAGS)
-export PJSTUN_SRV_TEST_LDFLAGS += $(_LDFLAGS)
-export PJSTUN_SRV_TEST_EXE:=../bin/pjstun-srv-test-$(TARGET_NAME)$(HOST_EXE)
+export PJTURN_SRV_CFLAGS += $(_CFLAGS)
+export PJTURN_SRV_LDFLAGS += $(_LDFLAGS)
+export PJTURN_SRV_EXE:=../bin/pjturn-srv-$(TARGET_NAME)$(HOST_EXE)
@@ -71,8 +72,7 @@ export CC_OUT CC AR RANLIB HOST_MV HOST_RM HOST_RMDIR HOST_MKDIR OBJEXT LD LDOUT
#
# $(TARGET) is defined in os-$(OS_NAME).mak file in current directory.
#
-TARGETS := pjnath pjnath-test
-#pjstun-client pjstun-srv-test
+TARGETS := pjnath pjnath-test pjturn-client pjturn-srv
all: $(TARGETS)
@@ -90,11 +90,11 @@ pjnath:
pjnath-test: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
$(MAKE) -f $(RULES_MAK) APP=PJNATH_TEST app=pjnath-test $(PJNATH_TEST_EXE)
-pjstun-client: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_CLIENT app=pjstun-client $(PJSTUN_CLIENT_EXE)
+pjturn-client: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_CLIENT app=pjturn-client $(PJTURN_CLIENT_EXE)
-pjstun-srv-test: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_SRV_TEST app=pjstun-srv-test $(PJSTUN_SRV_TEST_EXE)
+pjturn-srv: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_SRV app=pjturn-srv $(PJTURN_SRV_EXE)
.PHONY: ../lib/pjnath.ko
../lib/pjnath.ko:
@@ -108,24 +108,24 @@ pjstun-srv-test: $(PJLIB_LIB) $(PJLIB_UTIL_LIB) $(PJNATH_LIB)
clean:
$(MAKE) -f $(RULES_MAK) APP=PJNATH app=pjnath $@
$(MAKE) -f $(RULES_MAK) APP=PJNATH_TEST app=pjnath-test $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_CLIENT app=pjstun-client $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_SRV_TEST app=pjstun-srv-test $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_CLIENT app=pjturn-client $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_SRV app=pjturn-srv $@
realclean:
$(subst @@,$(subst /,$(HOST_PSEP),.pjnath-$(TARGET_NAME).depend),$(HOST_RMR))
$(subst @@,$(subst /,$(HOST_PSEP),.pjnath-test-$(TARGET_NAME).depend),$(HOST_RMR))
- $(subst @@,$(subst /,$(HOST_PSEP),.pjstun-client-$(TARGET_NAME).depend),$(HOST_RMR))
- $(subst @@,$(subst /,$(HOST_PSEP),.pjstun-srv-test-$(TARGET_NAME).depend),$(HOST_RMR))
+ $(subst @@,$(subst /,$(HOST_PSEP),.pjturn-client-$(TARGET_NAME).depend),$(HOST_RMR))
+ $(subst @@,$(subst /,$(HOST_PSEP),.pjturn-srv-$(TARGET_NAME).depend),$(HOST_RMR))
$(MAKE) -f $(RULES_MAK) APP=PJNATH app=pjnath $@
$(MAKE) -f $(RULES_MAK) APP=PJNATH_TEST app=pjnath-test $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_CLIENT app=pjstun-client $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_SRV_TEST app=pjstun-srv-test $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_CLIENT app=pjturn-client $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_SRV app=pjturn-srv $@
depend:
$(MAKE) -f $(RULES_MAK) APP=PJNATH app=pjnath $@
$(MAKE) -f $(RULES_MAK) APP=PJNATH_TEST app=pjnath-test $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_CLIENT app=pjstun-client $@
- $(MAKE) -f $(RULES_MAK) APP=PJSTUN_SRV_TEST app=pjstun-srv-test $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_CLIENT app=pjturn-client $@
+ $(MAKE) -f $(RULES_MAK) APP=PJTURN_SRV app=pjturn-srv $@
echo '$(TEST_EXE): $(PJNATH_LIB)' >> .pjnath-test-$(TARGET_NAME).depend; \
diff --git a/pjnath/src/pjnath/turn_session.c b/pjnath/src/pjnath/turn_session.c
index e5364edc..0e91ca09 100644
--- a/pjnath/src/pjnath/turn_session.c
+++ b/pjnath/src/pjnath/turn_session.c
@@ -336,6 +336,7 @@ static void sess_shutdown(pj_turn_session *sess,
send_refresh(sess, 0);
break;
case PJ_TURN_STATE_DEALLOCATED:
+ case PJ_TURN_STATE_DESTROYING:
break;
}
diff --git a/pjnath/src/pjturn-client/client_main.c b/pjnath/src/pjturn-client/client_main.c
index 470ad251..9c428fcf 100644
--- a/pjnath/src/pjturn-client/client_main.c
+++ b/pjnath/src/pjturn-client/client_main.c
@@ -66,7 +66,6 @@ static struct options
static int worker_thread(void *unused);
-static pj_status_t parse_addr(const char *input, pj_sockaddr_in *addr);
static void turn_on_rx_data(pj_turn_udp *udp_rel,
const pj_uint8_t *pkt,
unsigned pkt_len,
@@ -320,39 +319,6 @@ static void turn_on_state(pj_turn_udp *udp_rel, pj_turn_state_t old_state,
}
}
-static pj_status_t parse_addr(const char *input,
- pj_sockaddr_in *addr)
-{
- const char *pos;
- pj_str_t ip;
- pj_uint16_t port;
- pj_sockaddr tmp_addr;
-
- pos = pj_ansi_strchr(input, ':');
- if (pos==NULL) {
- puts("Invalid format");
- return -1;
- }
-
- ip.ptr = (char*)input;
- ip.slen = pos - input;
- port = (pj_uint16_t)atoi(pos+1);
-
- if (port==0) {
- puts("Invalid port");
- return -1;
- }
-
- if (pj_sockaddr_in_init(&tmp_addr.ipv4, &ip, port)!=PJ_SUCCESS) {
- puts("Invalid address");
- return -1;
- }
-
- pj_memcpy(addr, &tmp_addr, sizeof(pj_sockaddr_in));
-
- return PJ_SUCCESS;
-}
-
static void menu(void)
{
pj_turn_session_info info;
@@ -423,7 +389,8 @@ static void console_main(void)
peer = &g.peer[1];
strcpy(input, "Hello from client");
- status = pj_turn_udp_sendto(g.udp_rel, input, strlen(input)+1,
+ status = pj_turn_udp_sendto(g.udp_rel, (const pj_uint8_t*)input,
+ strlen(input)+1,
&peer->addr,
pj_sockaddr_get_len(&peer->addr));
if (status != PJ_SUCCESS)
@@ -453,6 +420,10 @@ static void console_main(void)
break;
case '0':
case '1':
+ if (g.udp_rel == NULL) {
+ puts("No relay");
+ break;
+ }
peer = &g.peer[input[0]-'0'];
sprintf(input, "Hello from peer%d", input[0]-'0');
len = strlen(input)+1;
@@ -522,6 +493,7 @@ int main(int argc, char *argv[])
if (pj_optind == argc) {
puts("Error: TARGET is needed");
+ usage();
return 1;
}
diff --git a/pjnath/src/pjturn-srv/auth.c b/pjnath/src/pjturn-srv/auth.c
index 8e6c9c59..e02079e4 100644
--- a/pjnath/src/pjturn-srv/auth.c
+++ b/pjnath/src/pjturn-srv/auth.c
@@ -85,7 +85,7 @@ PJ_DEF(pj_status_t) pj_turn_get_password(const pj_stun_msg *msg,
const pj_str_t *realm,
const pj_str_t *username,
pj_pool_t *pool,
- int *data_type,
+ pj_stun_passwd_type *data_type,
pj_str_t *data)
{
unsigned i;
@@ -95,7 +95,7 @@ PJ_DEF(pj_status_t) pj_turn_get_password(const pj_stun_msg *msg,
PJ_UNUSED_ARG(pool);
if (pj_stricmp2(realm, g_realm))
- PJ_EINVAL;
+ return PJ_EINVAL;
for (i=0; i<PJ_ARRAY_SIZE(g_cred); ++i) {
if (pj_stricmp2(username, g_cred[i].username) == 0) {
diff --git a/pjnath/src/pjturn-srv/auth.h b/pjnath/src/pjturn-srv/auth.h
index 2e342a73..a684490f 100644
--- a/pjnath/src/pjturn-srv/auth.h
+++ b/pjnath/src/pjturn-srv/auth.h
@@ -88,7 +88,7 @@ PJ_DECL(pj_status_t) pj_turn_get_password(const pj_stun_msg *msg,
const pj_str_t *realm,
const pj_str_t *username,
pj_pool_t *pool,
- int *data_type,
+ pj_stun_passwd_type *data_type,
pj_str_t *data);
/**
diff --git a/pjnath/src/pjturn-srv/main.c b/pjnath/src/pjturn-srv/main.c
index 164b3c25..348ad3db 100644
--- a/pjnath/src/pjturn-srv/main.c
+++ b/pjnath/src/pjturn-srv/main.c
@@ -69,16 +69,17 @@ static void dump_status(pj_turn_srv *srv)
while (it) {
pj_turn_allocation *alloc = (pj_turn_allocation*)
pj_hash_this(srv->tables.alloc, it);
- printf("%-3d %-22s %-22s %-8.*s %-4d %-4d %-4d %-4d\n",
+ printf("%-3d %-22s %-22s %-8.*s %-4d %-4ld %-4d %-4d\n",
i,
alloc->info,
pj_sockaddr_print(&alloc->relay.hkey.addr, addr, sizeof(addr), 3),
(int)alloc->cred.data.static_cred.username.slen,
- (int)alloc->cred.data.static_cred.username.ptr,
+ alloc->cred.data.static_cred.username.ptr,
alloc->relay.lifetime,
alloc->relay.expiry.sec - now.sec,
pj_hash_count(alloc->peer_table),
pj_hash_count(alloc->ch_table));
+
it = pj_hash_next(srv->tables.alloc, it);
++i;
}