Changeset 4504
- Timestamp:
- Jul 7, 2005, 11:41:15 AM (21 years ago)
- Location:
- trunk/Nebulous/nebclient/src
- Files:
-
- 3 edited
-
nebclient.c (modified) (10 diffs)
-
nebclient.h (modified) (2 diffs)
-
test.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Nebulous/nebclient/src/nebclient.c
r4492 r4504 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.c,v 1.1 0 2005-07-07 02:08:12jhoblitt Exp $6 * $Id: nebclient.c,v 1.11 2005-07-07 21:41:15 jhoblitt Exp $ 7 7 */ 8 8 … … 22 22 #include "nebclient.h" 23 23 24 #define ERRBUF_SIZE 2 5524 #define ERRBUF_SIZE 2048 25 25 26 26 static off_t nebCopyFile(char *source, char *dest); … … 29 29 static bool nebNukeFile(const char *filename); 30 30 31 void nebServerInit(nebServer *server) 32 { 33 soap_init(server); 31 nebServer *nebServerAlloc(void) 32 { 33 nebServer *server; 34 35 server = xmalloc(sizeof(nebServer)); 36 server->soap = xmalloc(sizeof(struct soap)); 37 server->err_msg = xmalloc(ERRBUF_SIZE); 38 39 soap_init(server->soap); 40 41 return server; 34 42 } 35 43 … … 40 48 const char **string; 41 49 42 code = soap_faultcode(server );43 string = soap_faultstring(server );50 code = soap_faultcode(server->soap); 51 string = soap_faultstring(server->soap); 44 52 45 53 fault = xmalloc(strlen(*code) + 3 + strlen(*string) + 1); … … 51 59 void nebServerCleanup(nebServer *server) 52 60 { 53 soap_end(server); // remove deserialized data and clean up 54 soap_done(server); // detach the gSOAP environment 61 soap_end(server->soap); // remove deserialized data and clean up 62 soap_done(server->soap); // detach the gSOAP environment 63 64 nebFree(server->soap); 65 nebFree(server->err_msg); 66 nebFree(server); 55 67 } 56 68 … … 61 73 int file; 62 74 63 if (soap_call_ns1__create_USCOREobject(server , NULL, NULL, key, class, volume, comment, (char **)&response) == SOAP_OK) {75 if (soap_call_ns1__create_USCOREobject(server->soap, NULL, NULL, key, class, volume, comment, (char **)&response) == SOAP_OK) { 64 76 *URI = xmalloc(strlen((char *)response.result)); 65 77 strcpy(*URI, (char *)response.result); … … 91 103 int sourceFH, destFH; 92 104 93 if (soap_call_ns1__replicate_USCOREobject(server , NULL, NULL, (char *)key, (char *)volume, (char **)&response) != SOAP_OK) {105 if (soap_call_ns1__replicate_USCOREobject(server->soap, NULL, NULL, (char *)key, (char *)volume, (char **)&response) != SOAP_OK) { 94 106 // server error 95 107 return false; … … 188 200 189 201 // FIXME is this leaking memory when response goes out of scope? 190 if (soap_call_ns1__find_USCOREinstances(server , NULL, NULL, key, volume, &response) == SOAP_OK) {202 if (soap_call_ns1__find_USCOREinstances(server->soap, NULL, NULL, key, volume, &response) == SOAP_OK) { 191 203 192 204 resultElements = response.result->__size; … … 261 273 if (n < 0) { 262 274 fprintf(stderr, "no instances found\n"); 263 nebFree(locations);264 275 265 276 return false; … … 305 316 } 306 317 307 if (soap_call_ns1__delete_USCOREinstance(server , NULL, NULL, (char *)URI, &response) != SOAP_OK) {318 if (soap_call_ns1__delete_USCOREinstance(server->soap, NULL, NULL, (char *)URI, &response) != SOAP_OK) { 308 319 nebFree(filename); 309 320 -
trunk/Nebulous/nebclient/src/nebclient.h
r4492 r4504 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.h,v 1.1 2 2005-07-07 02:08:12jhoblitt Exp $6 * $Id: nebclient.h,v 1.13 2005-07-07 21:41:15 jhoblitt Exp $ 7 7 */ 8 8 … … 14 14 15 15 typedef enum { NEB_READ, NEB_WRITE } rw; 16 typedef struct soap nebServer; 16 typedef struct { 17 struct soap *soap; 18 char *err_msg; 19 }nebServer; 17 20 18 void nebServerInit(nebServer *server); 21 //void nebServerInit(nebServer *server); 22 nebServer *nebServerAlloc(void); 19 23 20 24 char *nebServerErr(nebServer *server); -
trunk/Nebulous/nebclient/src/test.c
r4503 r4504 4 4 5 5 int main (int argc, char **argv) { 6 nebServer server;6 nebServer *server; 7 7 char *URI; 8 8 int fh; … … 10 10 char **foo; 11 11 12 nebServerInit(&server);12 server = nebServerAlloc(); 13 13 14 fh = nebCreate( &server, argv[1], 0, NULL, NULL, &URI);14 fh = nebCreate(server, argv[1], 0, NULL, NULL, &URI); 15 15 16 16 if (fh > 0) { … … 25 25 printf( "local error\n" ); 26 26 } else { 27 printf( "server error: %s\n", nebServerErr( &server) );27 printf( "server error: %s\n", nebServerErr(server) ); 28 28 } 29 29 30 if (!nebReplicate( &server, argv[1], NULL, NULL)) {30 if (!nebReplicate(server, argv[1], NULL, NULL)) { 31 31 printf( "replication failed\n" ); 32 32 } else { … … 34 34 } 35 35 36 if (!nebCull( &server, argv[1])) {36 if (!nebCull(server, argv[1])) { 37 37 printf( "cull failed\n" ); 38 38 } else { … … 40 40 } 41 41 42 n = nebFindInstances( &server, argv[1], NULL, &foo);42 n = nebFindInstances(server, argv[1], NULL, &foo); 43 43 printf( "found %d instances\n", n ); 44 44 45 if (!nebDelete( &server, argv[1])) {45 if (!nebDelete(server, argv[1])) { 46 46 printf( "delete failed\n" ); 47 47 } else { … … 49 49 } 50 50 51 n = nebFindInstances( &server, argv[1], NULL, &foo);51 n = nebFindInstances(server, argv[1], NULL, &foo); 52 52 printf( "found %d instances\n", n ); 53 53 54 nebServerCleanup( &server);54 nebServerCleanup(server); 55 55 56 56 exit(0);
Note:
See TracChangeset
for help on using the changeset viewer.
