in.tag = &tagval;
tagval.name = GLITE_JP_ATTR_WF_SUCCESSOR;
tagval.value = &val;
- GSOAP_STRING(&val) = js;
- GSOAP_BLOB(&val) = NULL;
+ memset(&val, 0, sizeof(val));
+ GSOAP_SETSTRING(&val, js);
printf("Register successor ...\n");
ret = check_fault(soap,soap_call___jpsrv__RecordTag(soap, server, "",&in, &empty));
in.jobid = js;
tagval.name = GLITE_JP_ATTR_WF_ANCESTOR;
- GSOAP_STRING(&val) = ja;
+ GSOAP_SETSTRING(&val, ja);
printf("Register ancestor ...\n");
ret = check_fault(soap,soap_call___jpsrv__RecordTag(soap, server, "",&in, &empty));
in.tag = &tagval;
tagval.name = argv[3];
tagval.value = &val;
- GSOAP_STRING(&val) = argv[4];
- GSOAP_BLOB(&val)= NULL;
+ memset(&val, 0, sizeof(val));
+ GSOAP_SETSTRING(&val, argv[4]);
if (!(ret = check_fault(soap,
soap_call___jpsrv__RecordTag(soap, server, "",&in, &empty)))) {
struct jptype__stringOrBlob vals[2];
memset(vals, 0, sizeof vals);
- GSOAP_STRING(vals) = "/O=CESNET/O=Masaryk University/CN=Ales Krenek";
- GSOAP_STRING(vals + 1) = "Done";
+ GSOAP_SETSTRING(vals, "/O=CESNET/O=Masaryk University/CN=Ales Krenek");
+ GSOAP_SETSTRING(vals + 1, "Done");
struct jptype__primaryQuery q[] = {
{
puts("Attribute values:");
for (i=0; i<out.__sizeattrValues; i++)
printf("\t%s\t%s\t%s",
- GSOAP_STRING(out.attrValues[i]->value) ?
+ GSOAP_ISSTRING(out.attrValues[i]->value) ?
GSOAP_STRING(out.attrValues[i]->value) :
"binary",
orig2str(out.attrValues[i]->origin),
}
attr[0].name = in->tag->name;
- if (GSOAP_STRING(in->tag->value)) {
+ if (GSOAP_ISSTRING(in->tag->value)) {
attr[0].value = GSOAP_STRING(in->tag->value);
attr[0].binary = 0;
}
static void s2jp_qval(const struct jptype__stringOrBlob *in, char **value, int *binary, size_t *size)
{
- if (GSOAP_STRING(in)) {
+ if (GSOAP_ISSTRING(in)) {
*value = GSOAP_STRING(in);
*binary = 0;
*size = 0;
a->name = soap_strdup(soap,in[i].name);
if (freeit) free(in[i].name);
a->value = soap_malloc(soap,sizeof *a->value);
+ memset(a->value, 0, sizeof *a->value);
if (in[i].binary) {
- GSOAP_BLOB(a->value) = soap_malloc(soap,sizeof *GSOAP_BLOB(a->value));
+ GSOAP_SETBLOB(a->value, soap_malloc(soap,sizeof *GSOAP_BLOB(a->value)));
memset(GSOAP_BLOB(a->value),0,sizeof *GSOAP_BLOB(a->value));
GSOAP_BLOB(a->value)->__ptr = soap_malloc(soap,in[i].size);
GSOAP_BLOB(a->value)->__size = in[i].size;
memcpy(GSOAP_BLOB(a->value)->__ptr,in[i].value,in[i].size);
-
- GSOAP_STRING(a->value) = NULL;
}
else {
- GSOAP_STRING(a->value) = soap_strdup(soap,in[i].value);
- GSOAP_BLOB(a->value) = NULL;
+ GSOAP_SETSTRING(a->value, soap_strdup(soap,in[i].value));
}
if (freeit) free(in[i].value);
a->origin = jp2s_origin(in[i].origin);
for (i=0; i<na; i++) {
soap_dealloc(soap,a[i]->name);
- if (GSOAP_STRING(a[i]->value)) soap_dealloc(soap,GSOAP_STRING(a[i]->value));
- if (GSOAP_BLOB(a[i]->value)) {
+ if (GSOAP_ISSTRING(a[i]->value) && GSOAP_STRING(a[i]->value)) soap_dealloc(soap,GSOAP_STRING(a[i]->value));
+ if (GSOAP_ISBLOB(a[i]->value) && GSOAP_BLOB(a[i]->value)) {
soap_dealloc(soap,GSOAP_BLOB(a[i]->value)->__ptr);
soap_dealloc(soap,GSOAP_BLOB(a[i]->value));
}