/*
- * $Id: SimpleServer.xs,v 1.77 2007-09-07 16:54:01 mike Exp $
+ * $Id: SimpleServer.xs,v 1.83 2008-09-02 15:16:34 mike Exp $
* ----------------------------------------------------------------------
*
* Copyright (c) 2000-2004, Index Data.
setMember(hv2, "attributeValue",
newSViv(*elem->value.numeric));
} else {
- assert(elem->which == Z_AttributeValue_complex);
- Z_ComplexAttribute *c = elem->value.complex;
+ Z_ComplexAttribute *c;
Z_StringOrNumeric *son;
+ assert(elem->which == Z_AttributeValue_complex);
+ c = elem->value.complex;
/* We ignore semantic actions and multiple values */
assert(c->num_list > 0);
son = c->list[0];
if (rr->num_setnames > 1) {
rr->delete_status = 3; /* "System problem at target" */
/* There's no way to sent delete-msg using the GFS */
- return;
+ return 0;
}
for (i = 0; i < rr->num_setnames; i++) {
return 0;
}
+
+/*
+ * You'll laugh when I tell you this ... Astonishingly, it turns out
+ * that ActivePerl (which is widely used on Windows) has, in the
+ * header file Perl\lib\CORE\XSUB.h, the following heinous crime:
+ * # define open PerlLIO_open
+ * This of course screws up the use of the "open" member of the
+ * Z_IdAuthentication structure below, so we have to undo this
+ * brain-damage.
+ */
+#ifdef open
+#undef open
+#endif
+
+
bend_initresult *bend_init(bend_initrequest *q)
{
int dummy = simpleserver_clone();
}
href = newHV();
+
+ /* ### These should be given initial values from the client */
hv_store(href, "IMP_ID", 6, newSVpv("", 0), 0);
hv_store(href, "IMP_NAME", 8, newSVpv("", 0), 0);
hv_store(href, "IMP_VER", 7, newSVpv("", 0), 0);
+
hv_store(href, "ERR_CODE", 8, newSViv(0), 0);
hv_store(href, "ERR_STR", 7, newSViv(0), 0);
hv_store(href, "PEER_NAME", 9, newSVpv(q->peer_name, 0), 0);