|
version 1.1.1.1.2.23, 2011/05/02 23:02:44
|
version 1.2.4.2, 2011/08/18 19:04:10
|
|
Line 5
|
Line 5
|
| * $Author$ |
* $Author$ |
| * $Id$ |
* $Id$ |
| * |
* |
| *************************************************************************/ | ************************************************************************** |
| | The ELWIX and AITNET software is distributed under the following |
| | terms: |
| | |
| | All of the documentation and software included in the ELWIX and AITNET |
| | Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org> |
| | |
| | Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 |
| | by Michael Pounov <misho@elwix.org>. All rights reserved. |
| | |
| | Redistribution and use in source and binary forms, with or without |
| | modification, are permitted provided that the following conditions |
| | are met: |
| | 1. Redistributions of source code must retain the above copyright |
| | notice, this list of conditions and the following disclaimer. |
| | 2. Redistributions in binary form must reproduce the above copyright |
| | notice, this list of conditions and the following disclaimer in the |
| | documentation and/or other materials provided with the distribution. |
| | 3. All advertising materials mentioning features or use of this software |
| | must display the following acknowledgement: |
| | This product includes software developed by Michael Pounov <misho@elwix.org> |
| | ELWIX - Embedded LightWeight unIX and its contributors. |
| | 4. Neither the name of AITNET nor the names of its contributors |
| | may be used to endorse or promote products derived from this software |
| | without specific prior written permission. |
| | |
| | THIS SOFTWARE IS PROVIDED BY AITNET AND CONTRIBUTORS ``AS IS'' AND |
| | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
| | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
| | OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
| | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| | SUCH DAMAGE. |
| | */ |
| #ifndef __AITRPC_H |
#ifndef __AITRPC_H |
| #define __AITRPC_H |
#define __AITRPC_H |
| |
|
|
Line 230 struct tagBLOBHdr {
|
Line 267 struct tagBLOBHdr {
|
| |
|
| typedef struct { |
typedef struct { |
| struct sockaddr cli_sa; // host info |
struct sockaddr cli_sa; // host info |
| int cli_sock; // socket | int cli_sock; // socket fd |
| | int cli_type; // socket type |
| pthread_t cli_tid; // TID of thread |
pthread_t cli_tid; // TID of thread |
| |
|
| void *cli_parent; // pointer to parent rpc_srv_t for server or to rpc_sess_t for client |
void *cli_parent; // pointer to parent rpc_srv_t for server or to rpc_sess_t for client |
|
Line 299 inline const char *cli_GetError();
|
Line 337 inline const char *cli_GetError();
|
| * @regProgID = ProgramID for authentication & recognition |
* @regProgID = ProgramID for authentication & recognition |
| * @regProcID = ProcessID for authentication & recognition |
* @regProcID = ProcessID for authentication & recognition |
| * @concurentClients = Concurent clients at same time to this server |
* @concurentClients = Concurent clients at same time to this server |
| * @family = Family socket type, AF_INET or AF_INET6 | * @sockType = Socket type, like SOCK_STREAM, SOCK_DGRAM or SOCK_RAW |
| * @csHost = Host name or IP address for bind server, if NULL any address | * @family = Family type, AF_INET, AF_INET6 or AF_LOCAL |
| | * @csHost = Host name or address for bind server, if NULL any address |
| * @Port = Port for bind server, if Port == 0 default port is selected |
* @Port = Port for bind server, if Port == 0 default port is selected |
| * return: NULL == error or !=NULL bind and created RPC server instance |
* return: NULL == error or !=NULL bind and created RPC server instance |
| */ |
*/ |
| rpc_srv_t *rpc_srv_initServer(u_int regProgID, u_int regProcID, int concurentClients, |
rpc_srv_t *rpc_srv_initServer(u_int regProgID, u_int regProcID, int concurentClients, |
| u_short family, const char *csHost, u_short Port); | int sockType, u_short family, const char *csHost, u_short Port); |
| /* |
/* |
| * rpc_srv_endServer() Destroy RPC server, close all opened sockets and free resources |
* rpc_srv_endServer() Destroy RPC server, close all opened sockets and free resources |
| * @srv = RPC Server instance |
* @srv = RPC Server instance |