1// rpc.h 2 3#ifndef _BETALK_H_ 4#include "beCompat.h" 5#include "betalk.h" 6#endif 7 8bt_inPacket *btRPCSimpleCall(unsigned int serverIP, int port, bt_outPacket *outPacket); 9int btRPCConnect(unsigned int serverIP, int port); 10bool btRPCSend(int session, bt_outPacket *outPacket); 11bool btRPCCheckSignature(int session); 12void btDestroyInPacket(bt_inPacket *packet); 13bt_outPacket *btRPCPutHeader(unsigned char command, unsigned char argc, int32 length); 14void btRPCPutArg(bt_outPacket *packet, unsigned int type, void *data, int length); 15 16void btRPCCreateAck(bt_outPacket *packet, unsigned int xid, int error, int length); 17void btRPCSendAck(int client, bt_outPacket *packet); 18unsigned char btRPCGetChar(bt_inPacket *packet); 19unsigned int btRPCGetInt32(bt_inPacket *packet); 20int64 btRPCGetInt64(bt_inPacket *packet); 21char *btRPCGetNewString(bt_inPacket *packet); 22int btRPCGetString(bt_inPacket *packet, char *buffer, int length); 23void btRPCGrowPacket(bt_outPacket *packet, int bytes); 24void btRPCPutChar(bt_outPacket *packet, char value); 25void btRPCPutInt32(bt_outPacket *packet, int32 value); 26void btRPCPutInt64(bt_outPacket *packet, int64 value); 27void btRPCPutString(bt_outPacket *packet, char *buffer, int length); 28void btRPCPutBinary(bt_outPacket *packet, void *buffer, int length); 29void btRPCPutHandle(bt_outPacket *packet, btFileHandle *fhandle); 30int btRPCGetStat(bt_inPacket *packet, struct stat *st); 31void btRPCPutStat(bt_outPacket *packet, struct stat *st); 32 33int btRecv(int sock, void *data, int dataLen, int flags); 34int btSend(int sock, void *data, int dataLen, int flags); 35