git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
IPStack - SCTP support, dunno how good it is, but part of it is written
[tpg/acess2.git]
/
AcessNative
/
ld-acess_src
/
request.c
diff --git
a/AcessNative/ld-acess_src/request.c
b/AcessNative/ld-acess_src/request.c
index
75565f1
..
b8a3239
100644
(file)
--- a/
AcessNative/ld-acess_src/request.c
+++ b/
AcessNative/ld-acess_src/request.c
@@
-1,5
+1,15
@@
/*
*/
/*
*/
+#define DEBUG 0
+
+
+#if DEBUG
+# define DEBUG_S printf
+#else
+# define DEBUG_S(...)
+# define DONT_INCLUDE_SYSCALL_NAMES
+#endif
+
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
@@
-79,7
+89,8
@@
int _InitSyscalls()
#if USE_TCP
if( connect(gSocket, (struct sockaddr *)&gSyscall_ServerAddr, sizeof(struct sockaddr_in)) < 0 )
{
#if USE_TCP
if( connect(gSocket, (struct sockaddr *)&gSyscall_ServerAddr, sizeof(struct sockaddr_in)) < 0 )
{
- fprintf(stderr, "Cannot connect to server (localhost:%i)\n", SERVER_PORT);
+ fprintf(stderr, "[ERROR -] Cannot connect to server (localhost:%i)\n", SERVER_PORT);
+ fprintf(stderr, "[ERROR -] ", giSyscall_ClientID);
perror("_InitSyscalls");
#if __WIN32__
closesocket(gSocket);
perror("_InitSyscalls");
#if __WIN32__
closesocket(gSocket);
@@
-109,6
+120,7
@@
int _InitSyscalls()
#if !USE_TCP
// Ask server for a client ID
#if !USE_TCP
// Ask server for a client ID
+ if( !giSyscall_ClientID )
{
tRequestHeader req;
int len;
{
tRequestHeader req;
int len;
@@
-154,31
+166,31
@@
int SendRequest(tRequestHeader *Request, int RequestSize, int ResponseSize)
{
int i;
char *data = (char*)&Request->Params[Request->NParams];
{
int i;
char *data = (char*)&Request->Params[Request->NParams];
-
printf
("Request #%i (%s) -", Request->CallID, casSYSCALL_NAMES[Request->CallID]);
+
DEBUG_S
("Request #%i (%s) -", Request->CallID, casSYSCALL_NAMES[Request->CallID]);
for( i = 0; i < Request->NParams; i ++ )
{
switch(Request->Params[i].Type)
{
case ARG_TYPE_INT32:
for( i = 0; i < Request->NParams; i ++ )
{
switch(Request->Params[i].Type)
{
case ARG_TYPE_INT32:
-
printf
(" 0x%08x", *(uint32_t*)data);
+
DEBUG_S
(" 0x%08x", *(uint32_t*)data);
data += sizeof(uint32_t);
break;
case ARG_TYPE_INT64:
data += sizeof(uint32_t);
break;
case ARG_TYPE_INT64:
-
printf
(" 0x%016llx", *(uint64_t*)data);
+
DEBUG_S
(" 0x%016llx", *(uint64_t*)data);
data += sizeof(uint64_t);
break;
case ARG_TYPE_STRING:
data += sizeof(uint64_t);
break;
case ARG_TYPE_STRING:
-
printf
(" '%s'", (char*)data);
+
DEBUG_S
(" '%s'", (char*)data);
data += Request->Params[i].Length;
break;
case ARG_TYPE_DATA:
data += Request->Params[i].Length;
break;
case ARG_TYPE_DATA:
-
printf
(" %p:0x%x", (char*)data, Request->Params[i].Length);
+
DEBUG_S
(" %p:0x%x", (char*)data, Request->Params[i].Length);
if( !(Request->Params[i].Flags & ARG_FLAG_ZEROED) )
data += Request->Params[i].Length;
break;
}
}
if( !(Request->Params[i].Flags & ARG_FLAG_ZEROED) )
data += Request->Params[i].Length;
break;
}
}
-
printf
("\n");
+
DEBUG_S
("\n");
}
// Send it off
}
// Send it off
@@
-200,6
+212,7
@@
void SendData(void *Data, int Length)
#endif
if( len != Length ) {
#endif
if( len != Length ) {
+ fprintf(stderr, "[ERROR %i] ", giSyscall_ClientID);
perror("SendData");
exit(-1);
}
perror("SendData");
exit(-1);
}
@@
-226,12
+239,13
@@
int ReadData(void *Dest, int MaxLength, int Timeout)
ret = select(gSocket+1, &fds, NULL, NULL, timeoutPtr);
if( ret == -1 ) {
ret = select(gSocket+1, &fds, NULL, NULL, timeoutPtr);
if( ret == -1 ) {
+ fprintf(stderr, "[ERROR %i] ", giSyscall_ClientID);
perror("ReadData - select");
exit(-1);
}
if( !ret ) {
perror("ReadData - select");
exit(-1);
}
if( !ret ) {
- printf("
Timeout reading from socket\n"
);
+ printf("
[ERROR %i] Timeout reading from socket\n", giSyscall_ClientID
);
return 0; // Timeout
}
return 0; // Timeout
}
@@
-242,11
+256,12
@@
int ReadData(void *Dest, int MaxLength, int Timeout)
#endif
if( ret < 0 ) {
#endif
if( ret < 0 ) {
+ fprintf(stderr, "[ERROR %i] ", giSyscall_ClientID);
perror("ReadData");
exit(-1);
}
perror("ReadData");
exit(-1);
}
-
printf
("%i bytes read from socket\n", ret);
+
DEBUG_S
("%i bytes read from socket\n", ret);
return ret;
}
return ret;
}
UCC
git Repository :: git.ucc.asn.au