Lines Matching refs:service

67 static void delete_service(soapServicePtr service);
162 ss = soap_server_object_fetch(Z_OBJ_P(ZEND_THIS))->service; \
171 ss = soap_server_object_fetch(Z_OBJ_P(ZEND_THIS))->service; \
193 soapServicePtr service; member
211 if (server_obj->service) { in soap_server_object_free()
212 delete_service(server_obj->service); in soap_server_object_free()
900 soapServicePtr service; in PHP_METHOD() local
913 service = emalloc(sizeof(soapService)); in PHP_METHOD()
914 memset(service, 0, sizeof(soapService)); in PHP_METHOD()
915 service->send_errors = 1; in PHP_METHOD()
934 service->uri = estrndup(Z_STRVAL_P(tmp), Z_STRLEN_P(tmp)); in PHP_METHOD()
941 service->actor = estrndup(Z_STRVAL_P(tmp), Z_STRLEN_P(tmp)); in PHP_METHOD()
952 service->encoding = encoding; in PHP_METHOD()
961 service->class_map = zend_array_dup(Z_ARRVAL_P(tmp)); in PHP_METHOD()
972 service->features = Z_LVAL_P(tmp); in PHP_METHOD()
982 service->send_errors = 0; in PHP_METHOD()
984 service->send_errors = 1; in PHP_METHOD()
986 service->send_errors = Z_LVAL_P(tmp); in PHP_METHOD()
993 service->trace = true; in PHP_METHOD()
999 service->version = version; in PHP_METHOD()
1000 service->type = SOAP_FUNCTIONS; in PHP_METHOD()
1001 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
1002 service->soap_functions.ft = zend_new_array(0); in PHP_METHOD()
1005 service->sdl = get_sdl(ZEND_THIS, ZSTR_VAL(wsdl), cache_wsdl); in PHP_METHOD()
1006 if (service->uri == NULL) { in PHP_METHOD()
1007 if (service->sdl->target_ns) { in PHP_METHOD()
1008 service->uri = estrdup(service->sdl->target_ns); in PHP_METHOD()
1011 service->uri = estrdup("http://unknown-uri/"); in PHP_METHOD()
1017 service->typemap = soap_create_typemap(service->sdl, typemap_ht); in PHP_METHOD()
1021 server_obj->service = service; in PHP_METHOD()
1031 soapServicePtr service; in PHP_METHOD() local
1038 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1040 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1048 service->soap_class.persistence = value; in PHP_METHOD()
1064 soapServicePtr service; in PHP_METHOD() local
1073 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1075 service->type = SOAP_CLASS; in PHP_METHOD()
1076 service->soap_class.ce = ce; in PHP_METHOD()
1078 delete_argv(&service->soap_class); in PHP_METHOD()
1080 service->soap_class.persistence = SOAP_PERSISTENCE_REQUEST; in PHP_METHOD()
1081 service->soap_class.argc = num_args; in PHP_METHOD()
1082 if (service->soap_class.argc > 0) { in PHP_METHOD()
1083 service->soap_class.argv = safe_emalloc(service->soap_class.argc, sizeof(zval), 0); in PHP_METHOD()
1084 for (uint32_t i = 0; i < service->soap_class.argc; i++) { in PHP_METHOD()
1085 ZVAL_COPY(&service->soap_class.argv[i], &argv[i]); in PHP_METHOD()
1095 soapServicePtr service; in PHP_METHOD() local
1102 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1104 service->type = SOAP_OBJECT; in PHP_METHOD()
1106 zval_ptr_dtor(&service->soap_object); in PHP_METHOD()
1107 ZVAL_OBJ_COPY(&service->soap_object, Z_OBJ_P(obj)); in PHP_METHOD()
1115 soapServicePtr service; in PHP_METHOD() local
1122 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1125 if (service->type == SOAP_OBJECT) { in PHP_METHOD()
1126 ft = &(Z_OBJCE(service->soap_object)->function_table); in PHP_METHOD()
1127 } else if (service->type == SOAP_CLASS) { in PHP_METHOD()
1128 ft = &service->soap_class.ce->function_table; in PHP_METHOD()
1129 } else if (service->soap_functions.functions_all == TRUE) { in PHP_METHOD()
1131 } else if (service->soap_functions.ft != NULL) { in PHP_METHOD()
1134 ZEND_HASH_MAP_FOREACH_VAL(service->soap_functions.ft, name) { in PHP_METHOD()
1142 …if ((service->type != SOAP_OBJECT && service->type != SOAP_CLASS) || (f->common.fn_flags & ZEND_AC… in PHP_METHOD()
1154 soapServicePtr service; in PHP_METHOD() local
1161 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1166 if (service->type == SOAP_FUNCTIONS) { in PHP_METHOD()
1169 if (service->soap_functions.ft == NULL) { in PHP_METHOD()
1170 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
1171 service->soap_functions.ft = zend_new_array(zend_hash_num_elements(Z_ARRVAL_P(function_name))); in PHP_METHOD()
1192 zend_hash_update(service->soap_functions.ft, key, &function_copy); in PHP_METHOD()
1208 if (service->soap_functions.ft == NULL) { in PHP_METHOD()
1209 service->soap_functions.functions_all = FALSE; in PHP_METHOD()
1210 service->soap_functions.ft = zend_new_array(0); in PHP_METHOD()
1214 zend_hash_update(service->soap_functions.ft, key, &function_copy); in PHP_METHOD()
1223 if (service->soap_functions.ft != NULL) { in PHP_METHOD()
1224 zend_hash_destroy(service->soap_functions.ft); in PHP_METHOD()
1225 efree(service->soap_functions.ft); in PHP_METHOD()
1226 service->soap_functions.ft = NULL; in PHP_METHOD()
1228 service->soap_functions.functions_all = TRUE; in PHP_METHOD()
1238 static void _soap_server_exception(soapServicePtr service, sdlFunctionPtr function, zval *this_ptr)… in _soap_server_exception() argument
1246 if (service->send_errors) { in _soap_server_exception()
1264 soapServicePtr service; in PHP_METHOD() local
1287 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1288 SOAP_GLOBAL(soap_version) = service->version; in PHP_METHOD()
1301 if (service->sdl) { in PHP_METHOD()
1312 ZVAL_STRING(&param, service->sdl->source); in PHP_METHOD()
1415 SOAP_GLOBAL(sdl) = service->sdl; in PHP_METHOD()
1417 SOAP_GLOBAL(encoding) = service->encoding; in PHP_METHOD()
1419 SOAP_GLOBAL(class_map) = service->class_map; in PHP_METHOD()
1421 SOAP_GLOBAL(typemap) = service->typemap; in PHP_METHOD()
1423 SOAP_GLOBAL(features) = service->features; in PHP_METHOD()
1427 …function = deserialize_function_call(service->sdl, doc_request, service->actor, &function_name, &n… in PHP_METHOD()
1439 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1444 service->soap_headers_ptr = &soap_headers; in PHP_METHOD()
1447 if (service->type == SOAP_OBJECT) { in PHP_METHOD()
1448 soap_obj = &service->soap_object; in PHP_METHOD()
1450 } else if (service->type == SOAP_CLASS) { in PHP_METHOD()
1453 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1463 if (EXPECTED(Z_OBJCE_P(tmp_soap_p) == service->soap_class.ce)) { in PHP_METHOD()
1475 object_init_ex(&tmp_soap, service->soap_class.ce); in PHP_METHOD()
1478 if (service->soap_class.ce->constructor) { in PHP_METHOD()
1480 service->soap_class.ce->constructor, Z_OBJ(tmp_soap), NULL, in PHP_METHOD()
1481 service->soap_class.argc, service->soap_class.argv); in PHP_METHOD()
1484 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1492 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1509 if (service->soap_functions.functions_all == TRUE) { in PHP_METHOD()
1512 function_table = service->soap_functions.ft; in PHP_METHOD()
1524 if (service->sdl && !h->function && !h->hdr) { in PHP_METHOD()
1533 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) && in PHP_METHOD()
1535 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) { in PHP_METHOD()
1548 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);} in PHP_METHOD()
1552 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1553 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);} in PHP_METHOD()
1563 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) && in PHP_METHOD()
1565 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) { in PHP_METHOD()
1567 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1568 if (service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1583 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1584 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1585 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1611 …doc_return = serialize_response_call(function, response_name, service->uri, &retval, soap_headers,… in PHP_METHOD()
1623 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1624 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1625 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1656 if (service->trace) { in PHP_METHOD()
1657 if (service->last_response_body) { in PHP_METHOD()
1658 zend_string_release_ex(service->last_response_body, false); in PHP_METHOD()
1660 service->last_response_body = zend_string_init((const char *) buf, size, false); in PHP_METHOD()
1698 service->soap_headers_ptr = NULL; in PHP_METHOD()
1720 soapServicePtr service; in PHP_METHOD() local
1730 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1732 SOAP_GLOBAL(encoding) = service->encoding; in PHP_METHOD()
1744 soapServicePtr service; in PHP_METHOD() local
1752 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1754 if (!service || !service->soap_headers_ptr) { in PHP_METHOD()
1759 p = service->soap_headers_ptr; in PHP_METHOD()
1772 soapServicePtr service; in PHP_METHOD() local
1774 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1775 if (service->last_response_body) { in PHP_METHOD()
1776 RETURN_STR_COPY(service->last_response_body); in PHP_METHOD()
1885 soapServicePtr service; in soap_real_error_handler() local
1893 (service = soap_server_object_fetch(Z_OBJ_P(error_object))->service) && in soap_real_error_handler()
1894 !service->send_errors) { in soap_real_error_handler()
4529 static void delete_service(soapServicePtr service) /* {{{ */ in delete_service() argument
4531 if (service->soap_functions.ft) { in delete_service()
4532 zend_hash_destroy(service->soap_functions.ft); in delete_service()
4533 efree(service->soap_functions.ft); in delete_service()
4536 if (service->typemap) { in delete_service()
4537 zend_hash_destroy(service->typemap); in delete_service()
4538 efree(service->typemap); in delete_service()
4541 delete_argv(&service->soap_class); in delete_service()
4543 if (service->actor) { in delete_service()
4544 efree(service->actor); in delete_service()
4546 if (service->uri) { in delete_service()
4547 efree(service->uri); in delete_service()
4549 if (service->sdl) { in delete_service()
4550 delete_sdl(service->sdl); in delete_service()
4552 if (service->encoding) { in delete_service()
4553 xmlCharEncCloseFunc(service->encoding); in delete_service()
4555 if (service->class_map) { in delete_service()
4556 zend_hash_destroy(service->class_map); in delete_service()
4557 FREE_HASHTABLE(service->class_map); in delete_service()
4559 if (service->last_response_body) { in delete_service()
4560 zend_string_release_ex(service->last_response_body, false); in delete_service()
4562 zval_ptr_dtor(&service->soap_object); in delete_service()
4563 efree(service); in delete_service()