Changeset 4465
- Timestamp:
- Jul 6, 2005, 11:41:03 AM (21 years ago)
- Location:
- trunk/Nebulous/nebclient/src
- Files:
-
- 2 edited
-
nebclient.c (modified) (3 diffs)
-
nebclient.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Nebulous/nebclient/src/nebclient.c
r4461 r4465 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.c,v 1. 6 2005-07-06 04:14:41jhoblitt Exp $6 * $Id: nebclient.c,v 1.7 2005-07-06 21:41:03 jhoblitt Exp $ 7 7 */ 8 8 … … 85 85 } 86 86 87 int nebReplicate(nebServer *server, char *key, char *volume, char **URI)87 bool nebReplicate(nebServer *server, const char *key, const char *volume, char **URI) 88 88 { 89 89 struct ns1__replicate_USCOREobjectResponse response; … … 91 91 int sourceFH, destFH; 92 92 93 if (soap_call_ns1__replicate_USCOREobject(server, NULL, NULL, key, volume, (char **)&response) == SOAP_OK) { 93 if (soap_call_ns1__replicate_USCOREobject(server, NULL, NULL, (char *)key, (char *)volume, (char **)&response) != SOAP_OK) { 94 // server error 95 return false; 96 } 97 98 if (!nebParseURI((char *)response.result, &filename)) { 99 fprintf(stderr, "can not parse URI\n"); 100 101 return false; 102 } 103 104 // if URI is not NULL 105 if (URI) { 94 106 *URI = xmalloc(strlen((char *)response.result)); 95 107 strcpy(*URI, (char *)response.result); 96 97 if (!nebParseURI(*URI, &filename)) { 98 fprintf(stderr, "can not parse URI\n");99 100 return 0;101 }102 103 sourceFH = nebOpen(server, key, NEB_READ); 104 if (sourceFH == -1) {105 fprintf(stderr, "can not open key %s\n", key );106 107 return -1;108 }109 110 destFH = open(filename, O_RDWR|O_TRUNC, 0660);111 if (destFH == -1) { 112 fprintf(stderr, "can not open %s: %s\n", filename, strerror(errno));113 114 return -1; 115 }116 117 nebCopyFilehandle(sourceFH, destFH);118 119 if (close(sourceFH) == -1) {120 fprintf(stderr, "can not close file: %s", strerror(errno)); 121 122 return -1;123 } 124 125 if (close(destFH) == -1) {126 fprintf(stderr, "can not close %s: %s", filename, strerror(errno));127 128 return -1;129 }130 } 131 132 // server error 133 return -1;108 } 109 110 // need a read lock 111 sourceFH = nebOpen(server, (char *)key, NEB_READ); 112 if (sourceFH == -1) { 113 fprintf(stderr, "can not open key %s\n", key ); 114 nebFree(filename); 115 116 return false; 117 } 118 119 destFH = open(filename, O_RDWR|O_TRUNC, 0660); 120 if (destFH == -1) { 121 fprintf(stderr, "can not open %s: %s\n", filename, strerror(errno)); 122 nebFree(filename); 123 124 return false; 125 } 126 127 nebCopyFilehandle(sourceFH, destFH); 128 129 if (close(sourceFH) == -1) { 130 fprintf(stderr, "can not close file: %s", strerror(errno)); 131 nebFree(filename); 132 133 return false; 134 } 135 136 if (close(destFH) == -1) { 137 fprintf(stderr, "can not close %s: %s", filename, strerror(errno)); 138 nebFree(filename); 139 140 return false; 141 } 142 143 nebFree(filename); 144 145 return true; 134 146 } 135 147 -
trunk/Nebulous/nebclient/src/nebclient.h
r4460 r4465 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.h,v 1. 8 2005-07-06 04:12:50jhoblitt Exp $6 * $Id: nebclient.h,v 1.9 2005-07-06 21:41:03 jhoblitt Exp $ 7 7 */ 8 8 … … 24 24 int nebCreate(nebServer *server, char *key, unsigned int class, char *volume, char *comment, char **URI); 25 25 26 int nebReplicate(nebServer *server, char *key,char *volume, char **URI);26 bool nebReplicate(nebServer *server, const char *key, const char *volume, char **URI); 27 27 28 28 int nebCull(nebServer *server, char *key);
Note:
See TracChangeset
for help on using the changeset viewer.
