reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
Udp.hxx
Go to the documentation of this file.
1#ifndef UDP_HXX
2#define UDP_HXX
3
4
5#ifdef __MACH__
6# ifdef __APPLE__
7# include <sys/socket.h>
8# if !defined(_BSD_SOCKLEN_T_) && !defined(_SOCKLEN_T)
9 typedef int socklen_t;
10# endif
11# else
12// GNU HURD also defines __MACH__ but does not require this typedef
13# ifndef __GNU__
14 typedef int socklen_t;
15# endif
16# endif
17#endif
18
19#include "rutil/Socket.hxx"
20
25openPort( unsigned short port, unsigned int interfaceIp,
26 bool verbose);
27
28
30bool
31getMessage( resip::Socket fd, char* buf, int* len,
32 uint32_t* srcIp, unsigned short* srcPort,
33 bool verbose);
34
35
37bool
38sendMessage( resip::Socket fd, char* msg, int len,
39 unsigned int dstIp, unsigned short dstPort,
40 bool verbose);
41
42/* ====================================================================
43 * The Vovida Software License, Version 1.0
44 *
45 * Redistribution and use in source and binary forms, with or without
46 * modification, are permitted provided that the following conditions
47 * are met:
48 *
49 * 1. Redistributions of source code must retain the above copyright
50 * notice, this list of conditions and the following disclaimer.
51 *
52 * 2. Redistributions in binary form must reproduce the above copyright
53 * notice, this list of conditions and the following disclaimer in
54 * the documentation and/or other materials provided with the
55 * distribution.
56 *
57 * 3. The names "VOCAL", "Vovida Open Communication Application Library",
58 * and "Vovida Open Communication Application Library (VOCAL)" must
59 * not be used to endorse or promote products derived from this
60 * software without prior written permission. For written
61 * permission, please contact vocal@vovida.org.
62 *
63 * 4. Products derived from this software may not be called "VOCAL", nor
64 * may "VOCAL" appear in their name, without prior written
65 * permission of Vovida Networks, Inc.
66 *
67 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
68 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
69 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
70 * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA
71 * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
72 * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
73 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
74 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
75 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
76 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
77 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
78 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
79 * DAMAGE.
80 *
81 */
82
83// Local Variables:
84// mode:c++
85// c-file-style:"ellemtel"
86// c-file-offsets:((case-label . +))
87// indent-tabs-mode:nil
88// End:
89
90#endif
Handles cross-platform sockets compatibility.
bool sendMessage(resip::Socket fd, char *msg, int len, unsigned int dstIp, unsigned short dstPort, bool verbose)
send a UDP message
Definition Udp.cxx:187
resip::Socket openPort(unsigned short port, unsigned int interfaceIp, bool verbose)
Open a UDP socket to receive on the given port - if port is 0, pick a a port, if interfaceIp!...
Definition Udp.cxx:38
bool getMessage(resip::Socket fd, char *buf, int *len, uint32_t *srcIp, unsigned short *srcPort, bool verbose)
recive a UDP message
Definition Udp.cxx:118
int Socket
Definition Socket.hxx:94
unsigned int uint32_t
Definition stdint.h:85
void list()
Definition userAdmin.cxx:66