modules/mi_datagram/datagram_fnc.h
66800c68
 /*
  * $Id: datagram_fnc.h 1133 2007-04-02 17:31:13Z ancuta_onofrei $
  *
  * Copyright (C) 2007 Voice Sistem SRL
  *
27642a08
  * This file is part of Kamailio, a free SIP server.
66800c68
  *
27642a08
  * Kamailio is free software; you can redistribute it and/or modify
66800c68
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
  *
27642a08
  * Kamailio is distributed in the hope that it will be useful,
66800c68
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
9e1ff448
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
66800c68
  *
  *
  * History:
  * ---------
  *  2007-06-25  first version (ancuta)
  */
 
 #ifndef _DATAGRAM_FNC_H
 #define _DATAGRAM_FNC_H
 
 #include <stdio.h>
 #include <stdarg.h>
 #include <errno.h>
 #include "../../ip_addr.h"
 #include "../../str.h"
 #include "../../dprint.h"
 #include "../../ut.h"
3022de98
 #include "../../lib/kmi/mi.h"
66800c68
 #include "../../mem/mem.h"
 #include "../../mem/shm_mem.h"
 
 #include "mi_datagram.h"
 
 #define MI_COMMAND_FAILED              "500 command failed\n"
 #define MI_COMMAND_FAILED_LEN          (sizeof(MI_COMMAND_FAILED)-1)
 #define MI_COMMAND_NOT_AVAILABLE       "500 command not available\n"
 #define MI_COMMAND_AVAILABLE_LEN       (sizeof(MI_COMMAND_NOT_AVAILABLE)-1)
 #define MI_PARSE_ERROR       		   "400 parse error in command\n"
 #define MI_PARSE_ERROR_LEN       	   (sizeof(MI_PARSE_ERROR)-1)
 #define MI_INTERNAL_ERROR				"500 Internal server error\n"
 #define MI_INTERNAL_ERROR_LEN			(sizeof(MI_INTERNAL_ERROR)-1)
 
 
 
 typedef struct datagram_str{
 	char * start, * current; 
 	int len;
 }datagram_stream;
 
 typedef struct rx_tx{
 	int rx_sock, tx_sock;
 }rx_tx_sockets;
 
 
 int  mi_init_datagram_server(sockaddr_dtgram * address, unsigned int domain,
 								rx_tx_sockets * socks,int mode, 
 								int uid, int gid );
5ddbf042
 int mi_init_datagram_buffer(void);
66800c68
 void mi_datagram_server(int rx_sock, int tx_sock);
 #endif /*_DATAGRAM_FNC_H*/