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
1288 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1289 SOAP_GLOBAL(soap_version) = service->version; in PHP_METHOD()
1302 if (service->sdl) { in PHP_METHOD()
1313 ZVAL_STRING(¶m, service->sdl->source); in PHP_METHOD()
1418 SOAP_GLOBAL(sdl) = service->sdl; in PHP_METHOD()
1420 SOAP_GLOBAL(encoding) = service->encoding; in PHP_METHOD()
1422 SOAP_GLOBAL(class_map) = service->class_map; in PHP_METHOD()
1424 SOAP_GLOBAL(typemap) = service->typemap; in PHP_METHOD()
1426 SOAP_GLOBAL(features) = service->features; in PHP_METHOD()
1430 …function = deserialize_function_call(service->sdl, doc_request, service->actor, soap_action, &func… in PHP_METHOD()
1442 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1447 service->soap_headers_ptr = &soap_headers; in PHP_METHOD()
1450 if (service->type == SOAP_OBJECT) { in PHP_METHOD()
1451 soap_obj = &service->soap_object; in PHP_METHOD()
1453 } else if (service->type == SOAP_CLASS) { in PHP_METHOD()
1456 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1466 if (EXPECTED(Z_OBJCE_P(tmp_soap_p) == service->soap_class.ce)) { in PHP_METHOD()
1478 object_init_ex(&tmp_soap, service->soap_class.ce); in PHP_METHOD()
1481 if (service->soap_class.ce->constructor) { in PHP_METHOD()
1483 service->soap_class.ce->constructor, Z_OBJ(tmp_soap), NULL, in PHP_METHOD()
1484 service->soap_class.argc, service->soap_class.argv); in PHP_METHOD()
1487 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1495 if (service->soap_class.persistence == SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1512 if (service->soap_functions.functions_all == TRUE) { in PHP_METHOD()
1515 function_table = service->soap_functions.ft; in PHP_METHOD()
1527 if (service->sdl && !h->function && !h->hdr) { in PHP_METHOD()
1536 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) && in PHP_METHOD()
1538 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) { in PHP_METHOD()
1551 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);} in PHP_METHOD()
1555 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1556 if (service->type == SOAP_CLASS && soap_obj) {zval_ptr_dtor(soap_obj);} in PHP_METHOD()
1566 ((service->type == SOAP_CLASS || service->type == SOAP_OBJECT) && in PHP_METHOD()
1568 if (service->type == SOAP_CLASS || service->type == SOAP_OBJECT) { in PHP_METHOD()
1570 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1571 if (service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1586 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1587 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1588 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1614 …doc_return = serialize_response_call(function, response_name, service->uri, &retval, soap_headers,… in PHP_METHOD()
1626 _soap_server_exception(service, function, ZEND_THIS); in PHP_METHOD()
1627 if (service->type == SOAP_CLASS) { in PHP_METHOD()
1628 if (soap_obj && service->soap_class.persistence != SOAP_PERSISTENCE_SESSION) { in PHP_METHOD()
1659 if (service->trace) { in PHP_METHOD()
1660 if (service->last_response_body) { in PHP_METHOD()
1661 zend_string_release_ex(service->last_response_body, false); in PHP_METHOD()
1663 service->last_response_body = zend_string_init((const char *) buf, size, false); in PHP_METHOD()
1701 service->soap_headers_ptr = NULL; in PHP_METHOD()
1723 soapServicePtr service; in PHP_METHOD() local
1733 FETCH_THIS_SERVICE(service); in PHP_METHOD()
1735 SOAP_GLOBAL(encoding) = service->encoding; in PHP_METHOD()
1747 soapServicePtr service; in PHP_METHOD() local
1755 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1757 if (!service || !service->soap_headers_ptr) { in PHP_METHOD()
1762 p = service->soap_headers_ptr; in PHP_METHOD()
1775 soapServicePtr service; in PHP_METHOD() local
1777 FETCH_THIS_SERVICE_NO_BAILOUT(service); in PHP_METHOD()
1778 if (service->last_response_body) { in PHP_METHOD()
1779 RETURN_STR_COPY(service->last_response_body); in PHP_METHOD()
1888 soapServicePtr service; in soap_real_error_handler() local
1896 (service = soap_server_object_fetch(Z_OBJ_P(error_object))->service) && in soap_real_error_handler()
1897 !service->send_errors) { in soap_real_error_handler()
4576 static void delete_service(soapServicePtr service) /* {{{ */ in delete_service() argument
4578 if (service->soap_functions.ft) { in delete_service()
4579 zend_hash_destroy(service->soap_functions.ft); in delete_service()
4580 efree(service->soap_functions.ft); in delete_service()
4583 if (service->typemap) { in delete_service()
4584 zend_hash_destroy(service->typemap); in delete_service()
4585 efree(service->typemap); in delete_service()
4588 delete_argv(&service->soap_class); in delete_service()
4590 if (service->actor) { in delete_service()
4591 efree(service->actor); in delete_service()
4593 if (service->uri) { in delete_service()
4594 efree(service->uri); in delete_service()
4596 if (service->sdl) { in delete_service()
4597 delete_sdl(service->sdl); in delete_service()
4599 if (service->encoding) { in delete_service()
4600 xmlCharEncCloseFunc(service->encoding); in delete_service()
4602 if (service->class_map) { in delete_service()
4603 zend_hash_destroy(service->class_map); in delete_service()
4604 FREE_HASHTABLE(service->class_map); in delete_service()
4606 if (service->last_response_body) { in delete_service()
4607 zend_string_release_ex(service->last_response_body, false); in delete_service()
4609 zval_ptr_dtor(&service->soap_object); in delete_service()
4610 efree(service); in delete_service()