annotate librtpalloc/simple_client.c @ 6:191d58f5c24f

librtpalloc: port the simple client
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 27 May 2024 21:10:01 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 * The library function implemented in this C module provides a
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * simple interface for obtaining a single RTP endpoint from
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 * themwi-rtp-mgr. This "simple client" option is suitable only
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * for command line utilities, not for daemon processes!
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 */
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 #include <sys/types.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 #include <sys/socket.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 #include <sys/un.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 #include <stdio.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 #include <stdint.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 #include <stdlib.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 #include <string.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 #include <strings.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 #include <themwi/rtp/rtp_alloc_if.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 #include <themwi/rtp/rtp_alloc_resp.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 #include <themwi/rtp/rtp_alloc_simple.h>
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 static const char ctrl_socket_pathname[] = "/var/gsm/rtp_alloc_socket";
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 static void
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 fill_sockaddr_un(pathname, sunp, lenp)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 char *pathname;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 struct sockaddr_un *sunp;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 unsigned *lenp;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 /* local socket binding voodoo copied from osmocon */
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 sunp->sun_family = AF_UNIX;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 strncpy(sunp->sun_path, pathname, sizeof(sunp->sun_path));
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 sunp->sun_path[sizeof(sunp->sun_path) - 1] = '\0';
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 /* we use the same magic that X11 uses in Xtranssock.c for
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 * calculating the proper length of the sockaddr */
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 #if defined(BSD44SOCKETS) || defined(__UNIXWARE__)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 sunp->sun_len = strlen(sunp->sun_path);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 #endif
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 #if defined(BSD44SOCKETS) || defined(SUN_LEN)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 *lenp = SUN_LEN(sunp);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 #else
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 *lenp = strlen(sunp->sun_path) +
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 offsetof(struct sockaddr_un, sun_path) + 1;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 #endif
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 static void
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 close_fds(resp)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 struct rtp_alloc_resp_wrap *resp;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 unsigned n;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 for (n = 0; n < resp->num_fd; n++)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 close(resp->fd_buf[n]);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 int rtp_alloc_simple(int ep_type, struct rtp_alloc_simple *out)
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 struct sockaddr_un sa;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 unsigned sa_len;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 int ctrl_fd, rc;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 struct rtp_alloc_req req;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 struct rtp_alloc_resp_wrap resp;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 unsigned expect_num_fd;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 switch (ep_type) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 case RTP_ALLOC_TYPE_GSM:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 case RTP_ALLOC_TYPE_PSTN:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 expect_num_fd = 2;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 break;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 case RTP_ALLOC_TYPE_GSM2PSTN:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 case RTP_ALLOC_TYPE_GSM2GSM:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 expect_num_fd = 4;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 break;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 default:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 fprintf(stderr,
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 "rtp_alloc_simple() error: unknown EP type %d\n",
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 ep_type);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 ctrl_fd = socket(AF_UNIX, SOCK_SEQPACKET, 0);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 if (ctrl_fd < 0) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 perror("socket(AF_UNIX, SOCK_SEQPACKET, 0)");
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 fill_sockaddr_un(ctrl_socket_pathname, &sa, &sa_len);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 rc = connect(ctrl_fd, (struct sockaddr *) &sa, sa_len);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 if (rc < 0) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 perror(ctrl_socket_pathname);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 close(ctrl_fd);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 bzero(&req, sizeof req);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 req.ep_type = ep_type;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 rc = send(ctrl_fd, &req, sizeof req, 0);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 if (rc < 0) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 perror("send to RTP allocator socket");
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 close(ctrl_fd);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 rc = collect_rtpmgr_resp(ctrl_fd, 0, &resp);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 if (rc < 0) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 perror("recvmsg from RTP allocator socket");
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 close(ctrl_fd);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 close(ctrl_fd);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107 if (resp.resp_len != sizeof(struct rtp_alloc_resp)) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 fprintf(stderr,
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 "error: response packet from themwi-rtp-mgr has wrong length (%u bytes)\n",
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 resp.resp_len);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 close_fds(&resp);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 if (resp.resp.res != RTP_ALLOC_OK) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 fprintf(stderr, "themwi-rtp-mgr returned error %u\n",
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 resp.resp.res);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 close_fds(&resp);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 if (resp.num_fd != expect_num_fd) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 fprintf(stderr,
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 "error: themwi-rtp-mgr returned %u descriptors instead of expected %u\n",
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 resp.num_fd, expect_num_fd);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 close_fds(&resp);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 return(-1);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 switch (ep_type) {
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 case RTP_ALLOC_TYPE_GSM:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 out->gsm_rtp_fd = resp.fd_buf[0];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 out->gsm_rtcp_fd = resp.fd_buf[1];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 break;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 case RTP_ALLOC_TYPE_PSTN:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 out->pstn_rtp_fd = resp.fd_buf[0];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 out->pstn_rtcp_fd = resp.fd_buf[1];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 break;
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 case RTP_ALLOC_TYPE_GSM2PSTN:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 case RTP_ALLOC_TYPE_GSM2GSM:
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 out->gsm_rtp_fd = resp.fd_buf[0];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 out->gsm_rtcp_fd = resp.fd_buf[1];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 out->pstn_rtp_fd = resp.fd_buf[2];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 out->pstn_rtcp_fd = resp.fd_buf[3];
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 }
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 bcopy(&resp.resp.gsm_addr, &out->gsm_addr,
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 sizeof(struct sockaddr_storage));
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 bcopy(&resp.resp.pstn_addr, &out->pstn_addr,
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 sizeof(struct sockaddr_storage));
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 return(0);
191d58f5c24f librtpalloc: port the simple client
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 }