diff options
Diffstat (limited to 'polyp/module-protocol-stub.c')
-rw-r--r-- | polyp/module-protocol-stub.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/polyp/module-protocol-stub.c b/polyp/module-protocol-stub.c index e681732f..4d86c28e 100644 --- a/polyp/module-protocol-stub.c +++ b/polyp/module-protocol-stub.c @@ -83,15 +83,16 @@ static const char* const valid_modargs[] = { static struct pa_socket_server *create_socket_server(struct pa_core *c, struct pa_modargs *ma) { struct pa_socket_server *s; #ifdef USE_TCP_SOCKETS - uint32_t loopback = 1, port = IPV4_PORT; + int loopback = 1; + uint32_t port = IPV4_PORT; - if (pa_modargs_get_value_u32(ma, "loopback", &loopback) < 0) { + if (pa_modargs_get_value_boolean(ma, "loopback", &loopback) < 0) { fprintf(stderr, "loopback= expects a numerical argument.\n"); return NULL; } - if (pa_modargs_get_value_u32(ma, "port", &port) < 0) { - fprintf(stderr, "port= expects a numerical argument.\n"); + if (pa_modargs_get_value_u32(ma, "port", &port) < 0 || port < 1 || port > 0xFFFF) { + fprintf(stderr, "port= expects a numerical argument between 1 and 65535.\n"); return NULL; } |