1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
/* tclink.h - Header file for TCLink library.
*
* TCLink Copyright (c) 2003 TrustCommerce.
* http://www.trustcommerce.com
* developer@trustcommerce.com
* (626) 744-7700
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef _TCLINK_H
#define _TCLINK_H
#include "config.h"
/* Handle passed to all TCLink functions. A unique handle must be created
* for each concurrent thread, but the same handle can be shared by transactions
* occurring one after another (such as a for loop).
*/
#define TCLinkHandle void *
/* Parameter names and values cannot exceed this size.
*/
#define PARAM_MAX_LEN 256
/* Create a new TCLinkHandle.
*/
TCLinkHandle TCLinkCreate();
/* Add a parameter to be sent to the server.
*/
void TCLinkPushParam(TCLinkHandle handle, const char *name, const char *value);
/* Flush the parameters to the server.
*/
void TCLinkSend(TCLinkHandle handle);
/* Look up a response value from the server.
* Returns NULL if no such parameter, or stores the value in 'value' and
* returns a pointer to value. value should be at least PARAM_MAX_LEN in size.
*/
char *TCLinkGetResponse(TCLinkHandle handle, const char *name, char *value);
/* Get all response values from the server in one giant string.
* Stores the string into buf and returns a pointer to it. Size should be
* sizeof(buf), which will limit the string so that no buffer overruns occur.
*/
char *TCLinkGetEntireResponse(TCLinkHandle handle, char *buf, int size);
/* Destory a handle, ending that transaction and freeing the memory associated with it. */
void TCLinkDestroy(TCLinkHandle handle);
/* Store version string into buf. Returns a pointer to buf. */
char *TCLinkGetVersion(char *buf);
#endif
|