rem: { soap->part = SOAP_IN_ENVELOPE;
add: { #ifndef WITH_LEANER size_t n = 0; if ((soap->mode & SOAP_ENC_MIME) && soap->mime.boundary && soap->mime.start) { const char *s; if (soap->mode & SOAP_ENC_DIME) s = "application/dime"; else if (soap->version == 2) s = "application/soap+xml; charset=utf-8"; else s = "text/xml; charset=utf-8"; sprintf(soap->tmpbuf, "--%s\r\nContent-Type: %s\r\nContent-Transfer-Encoding: binary\r\nContent-ID: %s\r\n\r\n", soap->mime.boundary, s, soap->mime.start); n = strlen(soap->tmpbuf); if (soap_send_raw(soap, soap->tmpbuf, n)) return soap->error; } if (soap->mode & SOAP_IO_LENGTH) soap->dime.size = soap->count;	 if (!(soap->mode & SOAP_IO_LENGTH) && (soap->mode & SOAP_ENC_DIME)) { if (soap_putdimehdr(soap)) return soap->error; } #endif soap->part = SOAP_IN_ENVELOPE;
context: soap_envelope_begin_out(struct soap *soap){ soap->part = SOAP_IN_ENVELOPE;  return soap_element_begin_out(soap, "SOAP-ENV:Envelope", 0, NULL);}