mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-17 15:29:05 +00:00
Move Asterisk-addons modules into the main Asterisk source tree.
Someone asked yesterday, "is there a good reason why we can't just put these modules in Asterisk?". After a brief discussion, as long as the modules are clearly set aside in their own directory and not enabled by default, it is perfectly fine. For more information about why a module goes in addons, see README-addons.txt. chan_ooh323 does not currently compile as it is behind some trunk API updates. However, it will not build by default, so it should be okay for now. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@204413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
91
addons/ooh323c/src/ooports.h
Normal file
91
addons/ooh323c/src/ooports.h
Normal file
@@ -0,0 +1,91 @@
|
||||
/*
|
||||
* Copyright (C) 2004-2005 by Objective Systems, Inc.
|
||||
*
|
||||
* This software is furnished under an open source license and may be
|
||||
* used and copied only in accordance with the terms of this license.
|
||||
* The text of the license may generally be found in the root
|
||||
* directory of this installation in the COPYING file. It
|
||||
* can also be viewed online at the following URL:
|
||||
*
|
||||
* http://www.obj-sys.com/open/license.html
|
||||
*
|
||||
* Any redistributions of this file including modified versions must
|
||||
* maintain this copyright notice.
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file ooports.h
|
||||
* This file contains functions to manage ports used by the stack.
|
||||
*/
|
||||
|
||||
#ifndef _OOPORTS_H_
|
||||
#define _OOPORTS_H_
|
||||
|
||||
#include "ootypes.h"
|
||||
|
||||
typedef enum OOH323PortType {
|
||||
OOTCP, OOUDP, OORTP
|
||||
} OOH323PortType;
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef EXTERN
|
||||
#ifdef MAKE_DLL
|
||||
#define EXTERN __declspec(dllexport)
|
||||
#else
|
||||
#define EXTERN
|
||||
#endif /* MAKE_DLL */
|
||||
#endif /* EXTERN */
|
||||
|
||||
/**
|
||||
* Get the next port of type TCP/UDP/RTP from the corresponding range.
|
||||
* When max value for the range is reached, it starts again from the
|
||||
* first port number of the range.
|
||||
*
|
||||
* @param ep Reference to the H323 Endpoint structure.
|
||||
* @param type Type of the port to be retrieved(OOTCP/OOUDP/OORTP).
|
||||
*
|
||||
* @return The next port number for the specified type is returned.
|
||||
*/
|
||||
EXTERN int ooGetNextPort (OOH323PortType type);
|
||||
|
||||
/**
|
||||
* Bind socket to a port within the port range specified by the
|
||||
* application at the startup.
|
||||
*
|
||||
* @param ep Reference to H323 Endpoint structure.
|
||||
* @param type Type of the port required for the socket.
|
||||
* @param socket The socket to be bound.
|
||||
* @param ip Dotted Ip address to bind to.
|
||||
*
|
||||
* @return In case of success returns the port number to which
|
||||
* socket is bound and in case of failure just returns
|
||||
* a negative value.
|
||||
*/
|
||||
EXTERN int ooBindPort (OOH323PortType type, OOSOCKET socket, char *ip);
|
||||
|
||||
/**
|
||||
* This function is supported for windows version only.
|
||||
* Windows sockets have problem in reusing the addresses even after
|
||||
* setting SO_REUSEADDR, hence in windows we just allow os to bind
|
||||
* to any random port.
|
||||
* @param socket Socket to be bound.
|
||||
* @param ip Dotted ip address to bind to.
|
||||
*
|
||||
* @return In case of success returns the port number to which
|
||||
* socket is bound and in case of failure just returns
|
||||
* a negative value.
|
||||
*/
|
||||
#ifdef _WIN32
|
||||
EXTERN int ooBindOSAllocatedPort(OOSOCKET socket, char *ip);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user