Lines Matching refs:request

114 mDNSlocal void set_peer_pid(request_state *request);
430 … reply_state *create_reply(const reply_op_t op, const size_t datalen, request_state *const request) in create_reply() argument
451 reply->mhdr->client_context = request->hdr.client_context; in create_reply()
482 …request_state *const request, reply_state **const rep, reply_op_t op, DNSServiceFlags flags, mStat… in GenerateNTDResponse() argument
519 *rep = create_reply(op, len, request); in GenerateNTDResponse()
535 …request_state *const request, reply_state **const rep, reply_op_t op, DNSServiceFlags flags, mStat… in GenerateBrowseReply() argument
568 *rep = create_reply(op, len, request); in GenerateBrowseReply()
583 mDNSlocal AuthRecord *read_rr_from_ipc_msg(request_state *request, int GetTTL, int validate_flags) in read_rr_from_ipc_msg() argument
585 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in read_rr_from_ipc_msg()
586 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in read_rr_from_ipc_msg()
588 int str_err = get_string(&request->msgptr, request->msgend, name, sizeof(name)); in read_rr_from_ipc_msg()
589 mDNSu16 type = get_uint16(&request->msgptr, request->msgend); in read_rr_from_ipc_msg()
590 mDNSu16 class = get_uint16(&request->msgptr, request->msgend); in read_rr_from_ipc_msg()
591 mDNSu16 rdlen = get_uint16(&request->msgptr, request->msgend); in read_rr_from_ipc_msg()
592 … const mDNSu8 *const rdata = (const mDNSu8 *)get_rdata (&request->msgptr, request->msgend, rdlen); in read_rr_from_ipc_msg()
593 mDNSu32 ttl = GetTTL ? get_uint32(&request->msgptr, request->msgend) : 0; in read_rr_from_ipc_msg()
600 request->flags = flags; in read_rr_from_ipc_msg()
601 request->interfaceIndex = interfaceIndex; in read_rr_from_ipc_msg()
605 if (!request->msgptr) { LogMsg("Error reading Resource Record from client"); return NULL; } in read_rr_from_ipc_msg()
673 request->request_id, DM_NAME_PARAM(rr->resrec.name), DNSTypeName(type)); in read_rr_from_ipc_msg()
709 mDNSlocal mDNSBool AuthorizedDomain(const request_state * const request, const domainname * const d…
716 if (SystemUID(request->uid)) return mDNStrue;
728 allow = (allow || (delem->uid == request->uid));
738 mDNSlocal void SetupAuditTokenForRequest(request_state *request) in SetupAuditTokenForRequest() argument
741 pid_t audit_pid = audit_token_to_pid(request->audit_token); in SetupAuditTokenForRequest()
748 int ret = getsockopt(request->sd, SOL_LOCAL, LOCAL_PEERTOKEN, &request->audit_token, &len); in SetupAuditTokenForRequest()
753 request->pid_name, request->process_id, request->hdr.op, ret); in SetupAuditTokenForRequest()
771 const pid_t requestPID = instance->request->process_id; in external_start_advertising_helper()
773 if (mDNSIPPortIsZero(instance->request->u.servicereg.port)) in external_start_advertising_helper()
781 for ( i = 0; i < instance->request->u.servicereg.num_subtypes; i++) in external_start_advertising_helper()
782 external_start_advertising_service(&st[i].resrec, instance->request->flags, requestPID); in external_start_advertising_helper()
784 …external_start_advertising_service(&instance->srs.RR_PTR.resrec, instance->request->flags, request… in external_start_advertising_helper()
785 …external_start_advertising_service(&instance->srs.RR_SRV.resrec, instance->request->flags, request… in external_start_advertising_helper()
786 …external_start_advertising_service(&instance->srs.RR_TXT.resrec, instance->request->flags, request… in external_start_advertising_helper()
789 external_start_advertising_service(&e->r.resrec, instance->request->flags, requestPID); in external_start_advertising_helper()
804 if (instance->request) in external_stop_advertising_helper()
806 const pid_t requestPID = instance->request->process_id; in external_stop_advertising_helper()
807 for (i = 0; i < instance->request->u.servicereg.num_subtypes; i++) in external_stop_advertising_helper()
809 external_stop_advertising_service(&st[i].resrec, instance->request->flags, requestPID); in external_stop_advertising_helper()
812 …external_stop_advertising_service(&instance->srs.RR_PTR.resrec, instance->request->flags, requestP… in external_stop_advertising_helper()
813 …external_stop_advertising_service(&instance->srs.RR_SRV.resrec, instance->request->flags, requestP… in external_stop_advertising_helper()
814 …external_stop_advertising_service(&instance->srs.RR_TXT.resrec, instance->request->flags, requestP… in external_stop_advertising_helper()
818 external_stop_advertising_service(&e->r.resrec, instance->request->flags, requestPID); in external_stop_advertising_helper()
869 if (srv->request) in unlink_and_free_service_instance()
871 service_instance **p = &srv->request->u.servicereg.instances; in unlink_and_free_service_instance()
931 …ponse(srs->RR_SRV.resrec.name, srs->RR_SRV.resrec.InterfaceID, instance->request, &rep, reg_servic… in SendServiceRemovalNotification()
932 …erviceRemovalNotification: %##s is not valid DNS-SD SRV name", instance->request->sd, srs->RR_SRV.… in SendServiceRemovalNotification()
933 else { append_reply(instance->request, rep); instance->clientnotified = mDNSfalse; } in SendServiceRemovalNotification()
960 if (instance->request && in regservice_callback()
961 instance->request->u.servicereg.default_domain && in regservice_callback()
969 mDNSu32 request_id = instance->request ? instance->request->request_id : 0; in regservice_callback()
989 if (!instance->request && result != mStatus_MemFree) in regservice_callback()
997 if (instance->request->u.servicereg.allowremotequery) in regservice_callback()
1007 …ponse(srs->RR_SRV.resrec.name, srs->RR_SRV.resrec.InterfaceID, instance->request, &rep, reg_servic… in regservice_callback()
1008 …rvice_callback: " PRI_DM_NAME " is not valid DNS-SD SRV name", instance->request->request_id, DM_N… in regservice_callback()
1009 else { append_reply(instance->request, rep); instance->clientnotified = mDNStrue; } in regservice_callback()
1012 …if (callExternalHelpers(instance->request->u.servicereg.InterfaceID, &instance->domain, instance-> in regservice_callback()
1014 … regservice_callback: calling external_start_advertising_helper()", instance->request->request_id); in regservice_callback()
1018 if (instance->request->u.servicereg.autoname && CountPeerRegistrations(srs) == 0) in regservice_callback()
1026 if (instance->request && instance->renameonmemfree) in regservice_callback()
1032 err = mDNS_RenameAndReregisterService(m, srs, &instance->request->u.servicereg.name); in regservice_callback()
1034 …regservice_callback - RenameAndReregisterService returned %d", instance->request->request_id, err); in regservice_callback()
1042 if (instance->request->u.servicereg.autorename) in regservice_callback()
1047 if (instance->request->u.servicereg.autoname && CountPeerRegistrations(srs) == 0) in regservice_callback()
1063 …ponse(srs->RR_SRV.resrec.name, srs->RR_SRV.resrec.InterfaceID, instance->request, &rep, reg_servic… in regservice_callback()
1064 …rvice_callback: " PRI_DM_NAME " is not valid DNS-SD SRV name", instance->request->request_id, DM_N… in regservice_callback()
1065 else { append_reply(instance->request, rep); instance->clientnotified = mDNStrue; } in regservice_callback()
1074 …ponse(srs->RR_SRV.resrec.name, srs->RR_SRV.resrec.InterfaceID, instance->request, &rep, reg_servic… in regservice_callback()
1075 …rvice_callback: " PRI_DM_NAME " is not valid DNS-SD SRV name", instance->request->request_id, DM_N… in regservice_callback()
1076 else { append_reply(instance->request, rep); instance->clientnotified = mDNStrue; } in regservice_callback()
1104 request_state *request = re->request; in regrecord_callback() local
1127request->request_id, re->key, RRDisplayString(m, &rr->resrec), result_description); in regrecord_callback()
1133 reply_state *reply = create_reply(reg_record_reply_op, len, request); in regrecord_callback()
1138 append_reply(request, reply); in regrecord_callback()
1147 …ack: Callback with error code mStatus_BadStateErr - not freeing the record.", request->request_id); in regrecord_callback()
1152 registered_record_entry **ptr = &request->u.reg_recs; in regrecord_callback()
1157 … "[R%u] regrecord_callback - record not in list!", request->request_id); in regrecord_callback()
1170 … "[R%u] regrecord_callback: external_advertise already set!", request->request_id); in regrecord_callback()
1174 if (callExternalHelpers(re->origInterfaceID, &rr->namestorage, request->flags)) in regrecord_callback()
1177 … "[R%u] regrecord_callback: calling external_start_advertising_service", request->request_id); in regrecord_callback()
1178 … external_start_advertising_service(&rr->resrec, request->flags, request->process_id); in regrecord_callback()
1188 mDNSlocal void set_peer_pid(request_state *request) in set_peer_pid() argument
1190 request->pid_name[0] = '\0'; in set_peer_pid()
1191 request->process_id = -1; in set_peer_pid()
1195 if (request->sd < 0) in set_peer_pid()
1198 if (getsockopt(request->sd, SOL_LOCAL, LOCAL_PEEREPID, &p, &len) != 0) in set_peer_pid()
1203 mDNSPlatformStrLCopy(request->pid_name, proc.pbsi_comm, sizeof(request->pid_name)); in set_peer_pid()
1204 request->process_id = p; in set_peer_pid()
1205 debugf("set_peer_pid: Client PEEREPID is %d %s", p, request->pid_name); in set_peer_pid()
1208 if (request->sd < 0) in set_peer_pid()
1213 mDNSlocal void connection_termination(request_state *request) in connection_termination() argument
1221 request->request_id, request->process_id, request->pid_name); in connection_termination()
1225 if ((*req)->primary == request) in connection_termination()
1248 while (request->u.reg_recs) in connection_termination()
1250 registered_record_entry *ptr = request->u.reg_recs; in connection_termination()
1253request->request_id, request->flags, request->interfaceIndex, RRDisplayString(&mDNSStorage, &ptr->… in connection_termination()
1254 request->pid_name); in connection_termination()
1255 request->u.reg_recs = request->u.reg_recs->next; in connection_termination()
1261 … external_stop_advertising_service(&ptr->rr->resrec, request->flags, request->process_id); in connection_termination()
1264 LogMcastS(ptr->rr, request, reg_stop); in connection_termination()
1270 mDNSlocal void handle_cancel_request(request_state *request) in handle_cancel_request() argument
1274request->request_id, request->hdr.client_context.u32[1], request->hdr.client_context.u32[0]); in handle_cancel_request()
1277 if ((*req)->primary == request && in handle_cancel_request()
1278 (*req)->hdr.client_context.u32[0] == request->hdr.client_context.u32[0] && in handle_cancel_request()
1279 (*req)->hdr.client_context.u32[1] == request->hdr.client_context.u32[1]) in handle_cancel_request()
1301 mDNSlocal mStatus _handle_regrecord_request_start(request_state *request, AuthRecord * rr) in _handle_regrecord_request_start() argument
1317 re->key = request->hdr.reg_index; in _handle_regrecord_request_start()
1319 re->regrec_client_context = request->hdr.client_context; in _handle_regrecord_request_start()
1320 re->request = request; in _handle_regrecord_request_start()
1329 …if (!AuthorizedDomain(request, rr->resrec.name, AutoRegistrationDomains)) return (mStatus_NoError); in _handle_regrecord_request_start()
1336request->request_id, request->flags, request->interfaceIndex, RRDisplayString(&mDNSStorage, &rr->r… in _handle_regrecord_request_start()
1337 request->pid_name); in _handle_regrecord_request_start()
1344request->request_id, request->flags, request->interfaceIndex, RRDisplayString(&mDNSStorage, &rr->r… in _handle_regrecord_request_start()
1350 LogMcastS(rr, request, reg_start); in _handle_regrecord_request_start()
1351 re->next = request->u.reg_recs; in _handle_regrecord_request_start()
1352 request->u.reg_recs = re; in _handle_regrecord_request_start()
1359 mDNSlocal void _return_regrecord_request_error(request_state *request, mStatus error) in _return_regrecord_request_error() argument
1362 … if (GenerateNTDResponse(NULL, 0, request, &rep, reg_record_reply_op, 0, error) != mStatus_NoError) in _return_regrecord_request_error()
1364 …u] DNSServiceRegisterRecord _return_regrecord_request_error: error(%d)", request->request_id, erro… in _return_regrecord_request_error()
1368 append_reply(request, rep); in _return_regrecord_request_error()
1372 mDNSlocal mStatus _handle_regrecord_request_with_trust(request_state *request, AuthRecord * rr) in _handle_regrecord_request_with_trust() argument
1375 if (audit_token_to_pid(request->audit_token) == 0) in _handle_regrecord_request_with_trust()
1377 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_regrecord_request_with_trust()
1378 err = _handle_regrecord_request_start(request, rr); in _handle_regrecord_request_with_trust()
1394 … mdns_trust_status_t status = mdns_trust_check_bonjour(request->audit_token, service_ptr, &flags); in _handle_regrecord_request_with_trust()
1400 mdns_trust_t trust = mdns_trust_create(request->audit_token, service_ptr, flags); in _handle_regrecord_request_with_trust()
1421 error = _handle_regrecord_request_start(request, _rr); in _handle_regrecord_request_with_trust()
1426 _return_regrecord_request_error(request, error); in _handle_regrecord_request_with_trust()
1432 request->trust = trust; in _handle_regrecord_request_with_trust()
1443 err = _handle_regrecord_request_start(request, rr); in _handle_regrecord_request_with_trust()
1456 mDNSlocal mStatus handle_regrecord_request(request_state *request) in handle_regrecord_request() argument
1461 if (request->terminate != connection_termination) in handle_regrecord_request()
1462 …{ LogMsg("%3d: DNSServiceRegisterRecord(not a shared connection ref)", request->sd); return(err); } in handle_regrecord_request()
1464 rr = read_rr_from_ipc_msg(request, 1, 1); in handle_regrecord_request()
1471 err = _handle_regrecord_request_with_trust(request, rr); in handle_regrecord_request()
1475 err = _handle_regrecord_request_start(request, rr); in handle_regrecord_request()
1478 err = _handle_regrecord_request_start(request, rr); in handle_regrecord_request()
1486 mDNSlocal void regservice_termination_callback(request_state *request) in regservice_termination_callback() argument
1488 if (!request) in regservice_termination_callback()
1493 while (request->u.servicereg.instances) in regservice_termination_callback()
1495 service_instance *p = request->u.servicereg.instances; in regservice_termination_callback()
1496 request->u.servicereg.instances = request->u.servicereg.instances->next; in regservice_termination_callback()
1499 request->request_id, DM_NAME_PARAM(p->srs.RR_SRV.resrec.name), in regservice_termination_callback()
1500 … mDNSVal16(p->srs.RR_SRV.resrec.rdata->u.srv.port), request->process_id, request->pid_name); in regservice_termination_callback()
1511 p->request = NULL; in regservice_termination_callback()
1512 LogMcastS(&p->srs.RR_SRV, request, reg_stop); in regservice_termination_callback()
1519 if (request->u.servicereg.txtdata) in regservice_termination_callback()
1521 freeL("service_info txtdata", request->u.servicereg.txtdata); in regservice_termination_callback()
1522 request->u.servicereg.txtdata = NULL; in regservice_termination_callback()
1524 if (request->u.servicereg.autoname) in regservice_termination_callback()
1527 request->u.servicereg.autoname = mDNSfalse; in regservice_termination_callback()
1532 mDNSlocal request_state *LocateSubordinateRequest(request_state *request) in LocateSubordinateRequest() argument
1536 if (req->primary == request && in LocateSubordinateRequest()
1537 req->hdr.client_context.u32[0] == request->hdr.client_context.u32[0] && in LocateSubordinateRequest()
1538 req->hdr.client_context.u32[1] == request->hdr.client_context.u32[1]) return(req); in LocateSubordinateRequest()
1539 return(request); in LocateSubordinateRequest()
1542 mDNSlocal mStatus add_record_to_service(request_state *request, service_instance *instance, mDNSu16… in add_record_to_service() argument
1559 request->request_id, DM_NAME_PARAM(request->u.servicereg.instances ? in add_record_to_service()
1560request->u.servicereg.instances->srs.RR_SRV.resrec.name : mDNSNULL), DNSTypeName(rrtype)); in add_record_to_service()
1566 extra->r.resrec.InterfaceID = request->u.servicereg.InterfaceID; in add_record_to_service()
1568 …result = mDNS_AddRecordToService(&mDNSStorage, srs, extra, &extra->r.rdatastorage, ttl, request->f… in add_record_to_service()
1574 LogMcastS(&srs->RR_PTR, request, reg_start); in add_record_to_service()
1576 extra->ClientID = request->hdr.reg_index; in add_record_to_service()
1579 … && callExternalHelpers(request->u.servicereg.InterfaceID, &instance->domain, request->flags)) in add_record_to_service()
1582 external_start_advertising_service(&extra->r.resrec, request->flags, request->process_id); in add_record_to_service()
1588 mDNSlocal mStatus handle_add_request(request_state *request) in handle_add_request() argument
1592 DNSServiceFlags flags = get_flags (&request->msgptr, request->msgend); in handle_add_request()
1593 mDNSu16 rrtype = get_uint16(&request->msgptr, request->msgend); in handle_add_request()
1594 mDNSu16 rdlen = get_uint16(&request->msgptr, request->msgend); in handle_add_request()
1595 const mDNSu8 *const rdata = (const mDNSu8 *)get_rdata(&request->msgptr, request->msgend, rdlen); in handle_add_request()
1596 mDNSu32 ttl = get_uint32(&request->msgptr, request->msgend); in handle_add_request()
1600 if (!request->msgptr) in handle_add_request()
1603 "[R%d] DNSServiceAddRecord(unreadable parameters)", request->request_id); in handle_add_request()
1608 if (request->terminate == connection_termination) request = LocateSubordinateRequest(request); in handle_add_request()
1610 if (request->terminate != regservice_termination_callback) in handle_add_request()
1613 "[R%d] DNSServiceAddRecord(not a registered service ref)", request->request_id); in handle_add_request()
1619 if (mDNSIPPortIsZero(request->u.servicereg.port)) in handle_add_request()
1622 …] DNSServiceAddRecord: adding record to a service registered with zero port", request->request_id); in handle_add_request()
1627 request->request_id, flags, in handle_add_request()
1628 …DM_NAME_PARAM((request->u.servicereg.instances) ? (request->u.servicereg.instances->srs.RR_SRV.res… in handle_add_request()
1629 DNSTypeName(rrtype), rdlen, request->process_id, request->pid_name); in handle_add_request()
1631 for (i = request->u.servicereg.instances; i; i = i->next) in handle_add_request()
1633 result = add_record_to_service(request, i, rrtype, rdlen, rdata, ttl); in handle_add_request()
1710 mDNSlocal mStatus handle_update_request(request_state *request) in handle_update_request() argument
1712 const ipc_msg_hdr *const hdr = &request->hdr; in handle_update_request()
1718 DNSServiceFlags flags = get_flags (&request->msgptr, request->msgend); // flags unused in handle_update_request()
1719 mDNSu16 rdlen = get_uint16(&request->msgptr, request->msgend); in handle_update_request()
1720 const mDNSu8 *const rdata = (const mDNSu8 *)get_rdata(&request->msgptr, request->msgend, rdlen); in handle_update_request()
1721 mDNSu32 ttl = get_uint32(&request->msgptr, request->msgend); in handle_update_request()
1724 if (!request->msgptr) in handle_update_request()
1727 "[R%d] DNSServiceUpdateRecord(unreadable parameters)", request->request_id); in handle_update_request()
1732 if (request->terminate == connection_termination) request = LocateSubordinateRequest(request); in handle_update_request()
1734 if (request->terminate == connection_termination) in handle_update_request()
1738 for (reptr = request->u.reg_recs; reptr; reptr = reptr->next) in handle_update_request()
1742 …ult = update_record(reptr->rr, rdlen, rdata, ttl, &reptr->external_advertise, request->request_id); in handle_update_request()
1745 request->request_id, DM_NAME_PARAM(reptr->rr->resrec.name), in handle_update_request()
1747 request->process_id, request->pid_name); in handle_update_request()
1755 if (request->terminate != regservice_termination_callback) in handle_update_request()
1758 "[R%d] DNSServiceUpdateRecord(not a registered service ref)", request->request_id); in handle_update_request()
1763 if (mDNSIPPortIsZero(request->u.servicereg.port)) in handle_update_request()
1766 …iceUpdateRecord: updating the record of a service registered with zero port", request->request_id); in handle_update_request()
1773 if (request->u.servicereg.txtdata) in handle_update_request()
1774 …{ freeL("service_info txtdata", request->u.servicereg.txtdata); request->u.servicereg.txtdata = NU… in handle_update_request()
1777 request->u.servicereg.txtdata = mallocL("service_info txtdata", rdlen); in handle_update_request()
1778 if (!request->u.servicereg.txtdata) FatalError("ERROR: handle_update_request - malloc"); in handle_update_request()
1779 mDNSPlatformMemCopy(request->u.servicereg.txtdata, rdata, rdlen); in handle_update_request()
1781 request->u.servicereg.txtlen = rdlen; in handle_update_request()
1785 for (i = request->u.servicereg.instances; i; i = i->next) in handle_update_request()
1796 result = update_record(rr, rdlen, rdata, ttl, &i->external_advertise, request->request_id); in handle_update_request()
1802 if (request->terminate == regservice_termination_callback) in handle_update_request()
1803 LogOperation("%3d: DNSServiceUpdateRecord(%##s, %s) PID[%d](%s)", request->sd, in handle_update_request()
1804 …(request->u.servicereg.instances) ? request->u.servicereg.instances->srs.RR_SRV.resrec.name->c : N… in handle_update_request()
1806 request->process_id, request->pid_name); in handle_update_request()
1812 mDNSlocal mStatus remove_record(request_state *request) in remove_record() argument
1815 registered_record_entry *e, **ptr = &request->u.reg_recs; in remove_record()
1817 while (*ptr && (*ptr)->key != request->hdr.reg_index) ptr = &(*ptr)->next; in remove_record()
1818 …if (!*ptr) { LogMsg("%3d: DNSServiceRemoveRecord(%u) not found", request->sd, request->hdr.reg_ind… in remove_record()
1823request->sd, e->key, RRDisplayString(&mDNSStorage, &e->rr->resrec), request->process_id, request->… in remove_record()
1828 external_stop_advertising_service(&e->rr->resrec, request->flags, request->process_id); in remove_record()
1832 LogMcastS(e->rr, request, reg_stop); in remove_record()
1843 mDNSlocal mStatus remove_extra(const request_state *const request, service_instance *const serv, mD… in remove_extra() argument
1850 if (ptr->ClientID == request->hdr.reg_index) // found match in remove_extra()
1856 … external_stop_advertising_service(&ptr->r.resrec, request->flags, request->process_id); in remove_extra()
1866 mDNSlocal mStatus handle_removerecord_request(request_state *request) in handle_removerecord_request() argument
1869 get_flags(&request->msgptr, request->msgend); // flags unused in handle_removerecord_request()
1871 if (!request->msgptr) in handle_removerecord_request()
1874 "[R%d] DNSServiceRemoveRecord(unreadable parameters)", request->request_id); in handle_removerecord_request()
1879 if (request->terminate == connection_termination) request = LocateSubordinateRequest(request); in handle_removerecord_request()
1881 if (request->terminate == connection_termination) in handle_removerecord_request()
1882 err = remove_record(request); // remove individually registered record in handle_removerecord_request()
1883 else if (request->terminate != regservice_termination_callback) in handle_removerecord_request()
1886 "[R%d] DNSServiceRemoveRecord(not a registered service ref)", request->request_id); in handle_removerecord_request()
1894 request->request_id, in handle_removerecord_request()
1895 …DM_NAME_PARAM((request->u.servicereg.instances) ? (request->u.servicereg.instances->srs.RR_SRV.res… in handle_removerecord_request()
1896 rrtype ? DNSTypeName(rrtype) : "<NONE>", request->process_id, request->pid_name); in handle_removerecord_request()
1897 for (i = request->u.servicereg.instances; i; i = i->next) in handle_removerecord_request()
1899 err = remove_extra(request, i, &rrtype); in handle_removerecord_request()
1992 mDNSlocal mStatus register_service_instance(request_state *request, const domainname *domain) in register_service_instance() argument
1995 …size_t extra_size = (request->u.servicereg.txtlen > sizeof(RDataBody)) ? (request->u.servicereg.tx… in register_service_instance()
1998 mDNSInterfaceID interfaceID = request->u.servicereg.InterfaceID; in register_service_instance()
2005 if (request->u.servicereg.default_domain && !DomainIsLocal) interfaceID = mDNSInterface_Any; in register_service_instance()
2007 for (ptr = &request->u.servicereg.instances; *ptr; ptr = &(*ptr)->next) in register_service_instance()
2012 domain->c, &request->u.servicereg.name, &request->u.servicereg.type); in register_service_instance()
2021 instance->request = request; in register_service_instance()
2024 … instance->default_local = (request->u.servicereg.default_domain && DomainIsLocal); in register_service_instance()
2028 …instance->subtypes = AllocateSubTypes(request->u.servicereg.num_subtypes, request->u.servicereg.ty… in register_service_instance()
2030 if (request->u.servicereg.num_subtypes && !instance->subtypes) in register_service_instance()
2038 &request->u.servicereg.name, &request->u.servicereg.type, domain, in register_service_instance()
2039request->u.servicereg.host.c[0] ? &request->u.servicereg.host : NULL, in register_service_instance()
2040 request->u.servicereg.port, in register_service_instance()
2041 … mDNSNULL, request->u.servicereg.txtdata, request->u.servicereg.txtlen, in register_service_instance()
2042 instance->subtypes, request->u.servicereg.num_subtypes, in register_service_instance()
2043 interfaceID, regservice_callback, instance, request->flags); in register_service_instance()
2048 LogOperation("%3d: DNSServiceRegister(%##s, %u) ADDED", instance->request->sd, in register_service_instance()
2049 instance->srs.RR_SRV.resrec.name->c, mDNSVal16(request->u.servicereg.port)); in register_service_instance()
2050 LogMcastS(&instance->srs.RR_SRV, request, reg_start); in register_service_instance()
2055 &request->u.servicereg.name, &request->u.servicereg.type, domain->c, result); in register_service_instance()
2064 request_state *request; in udsserver_default_reg_domain_changed() local
2067 for (request = all_requests; request; request = request->next) in udsserver_default_reg_domain_changed()
2069 if (request->terminate != regservice_termination_callback) continue; in udsserver_default_reg_domain_changed()
2070 if (!request->u.servicereg.default_domain) continue; in udsserver_default_reg_domain_changed()
2071 if (!d->uid || SystemUID(request->uid) || request->uid == d->uid) in udsserver_default_reg_domain_changed()
2073 service_instance **ptr = &request->u.servicereg.instances; in udsserver_default_reg_domain_changed()
2078 if (!*ptr) register_service_instance(request, &d->name); in udsserver_default_reg_domain_changed()
2088 … &d->name, request->u.servicereg.name.c, request->u.servicereg.type_as_string); in udsserver_default_reg_domain_changed()
2093 if (!p->uid || SystemUID(request->uid) || request->uid == p->uid) in udsserver_default_reg_domain_changed()
2111 si->request = NULL; in udsserver_default_reg_domain_changed()
2138 mDNSlocal mStatus _handle_regservice_request_start(request_state *request, const domainname * const… in _handle_regservice_request_start() argument
2142 request->terminate = regservice_termination_callback; in _handle_regservice_request_start()
2143 err = register_service_instance(request, d); in _handle_regservice_request_start()
2152 …err = AuthorizedDomain(request, d, AutoRegistrationDomains) ? register_service_instance(request, d… in _handle_regservice_request_start()
2156 if (request->u.servicereg.autoname) UpdateDeviceInfoRecord(&mDNSStorage); in _handle_regservice_request_start()
2158 if (request->u.servicereg.default_domain) in _handle_regservice_request_start()
2163 if (!ptr->uid || SystemUID(request->uid) || request->uid == ptr->uid) in _handle_regservice_request_start()
2164 register_service_instance(request, &ptr->name); in _handle_regservice_request_start()
2172 mDNSlocal void _return_regservice_request_error(request_state *request, mStatus error) in _return_regservice_request_error() argument
2174 if (request->u.servicereg.txtdata) in _return_regservice_request_error()
2176 freeL("service_info txtdata", request->u.servicereg.txtdata); in _return_regservice_request_error()
2177 request->u.servicereg.txtdata = NULL; in _return_regservice_request_error()
2181 …if (GenerateNTDResponse(NULL, 0, request, &rep, reg_service_reply_op, 0, error) != mStatus_NoError) in _return_regservice_request_error()
2183 … "[R%u] DNSServiceRegister _return_regservice_request_error: error(%d)", request->request_id, erro… in _return_regservice_request_error()
2187 append_reply(request, rep); in _return_regservice_request_error()
2191 mDNSlocal mStatus _handle_regservice_request_with_trust(request_state *request, const domainname * … in _handle_regservice_request_with_trust() argument
2194 if (audit_token_to_pid(request->audit_token) == 0) in _handle_regservice_request_with_trust()
2196 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_regservice_request_with_trust()
2197 err = _handle_regservice_request_start(request, d); in _handle_regservice_request_with_trust()
2202 …dns_trust_status_t status = mdns_trust_check_register_service(request->audit_token, request->u.ser… in _handle_regservice_request_with_trust()
2207 …mdns_trust_t trust = mdns_trust_create(request->audit_token, request->u.servicereg.type_as_string,… in _handle_regservice_request_with_trust()
2236 error = _handle_regservice_request_start(request, _d); in _handle_regservice_request_with_trust()
2241 _return_regservice_request_error(request, error); in _handle_regservice_request_with_trust()
2247 request->trust = trust; in _handle_regservice_request_with_trust()
2258 err = _handle_regservice_request_start(request, d); in _handle_regservice_request_with_trust()
2271 mDNSlocal mStatus handle_regservice_request(request_state *request) in handle_regservice_request() argument
2280 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_regservice_request()
2281 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_regservice_request()
2312 if (get_string(&request->msgptr, request->msgend, name, sizeof(name )) < 0 || in handle_regservice_request()
2313 get_string(&request->msgptr, request->msgend, type_as_string, sizeof(type_as_string)) < 0 || in handle_regservice_request()
2314 get_string(&request->msgptr, request->msgend, domain, sizeof(domain )) < 0 || in handle_regservice_request()
2315 get_string(&request->msgptr, request->msgend, host, sizeof(host )) < 0) in handle_regservice_request()
2318 request->flags = flags; in handle_regservice_request()
2319 request->interfaceIndex = interfaceIndex; in handle_regservice_request()
2320 request->u.servicereg.InterfaceID = InterfaceID; in handle_regservice_request()
2321 request->u.servicereg.instances = NULL; in handle_regservice_request()
2322 request->u.servicereg.txtlen = 0; in handle_regservice_request()
2323 request->u.servicereg.txtdata = NULL; in handle_regservice_request()
2324 …mDNSPlatformStrLCopy(request->u.servicereg.type_as_string, type_as_string, sizeof(request->u.servi… in handle_regservice_request()
2326 if (request->msgptr + 2 > request->msgend) request->msgptr = NULL; in handle_regservice_request()
2329 request->u.servicereg.port.b[0] = *request->msgptr++; in handle_regservice_request()
2330 request->u.servicereg.port.b[1] = *request->msgptr++; in handle_regservice_request()
2333 request->u.servicereg.txtlen = get_uint16(&request->msgptr, request->msgend); in handle_regservice_request()
2334 msgTXTData = get_rdata(&request->msgptr, request->msgend, request->u.servicereg.txtlen); in handle_regservice_request()
2336 …if (!request->msgptr) { LogMsg("%3d: DNSServiceRegister(unreadable parameters)", request->sd); ret… in handle_regservice_request()
2338 if (request->u.servicereg.txtlen) in handle_regservice_request()
2340request->u.servicereg.txtdata = mallocL("service_info txtdata", request->u.servicereg.txtlen); in handle_regservice_request()
2341 if (!request->u.servicereg.txtdata) FatalError("ERROR: handle_regservice_request - malloc"); in handle_regservice_request()
2342 … mDNSPlatformMemCopy(request->u.servicereg.txtdata, msgTXTData, request->u.servicereg.txtlen); in handle_regservice_request()
2346request->u.servicereg.num_subtypes = ChopSubTypes(request->u.servicereg.type_as_string); // Not… in handle_regservice_request()
2347 if (request->u.servicereg.num_subtypes < 0) in handle_regservice_request()
2349 …LogMsg("ERROR: handle_regservice_request - ChopSubTypes failed %s", request->u.servicereg.type_as_… in handle_regservice_request()
2354 …if (!*request->u.servicereg.type_as_string || !MakeDomainNameFromDNSNameString(&request->u.service… in handle_regservice_request()
2355 …{ LogMsg("ERROR: handle_regservice_request - type_as_string bad %s", request->u.servicereg.type_as… in handle_regservice_request()
2359 request->u.servicereg.name = mDNSStorage.nicelabel; in handle_regservice_request()
2360 request->u.servicereg.autoname = mDNStrue; in handle_regservice_request()
2370 if (!MakeDomainLabelFromLiteralString(&request->u.servicereg.name, name)) in handle_regservice_request()
2372 request->u.servicereg.autoname = mDNSfalse; in handle_regservice_request()
2377 request->u.servicereg.default_domain = mDNSfalse; in handle_regservice_request()
2383 request->u.servicereg.default_domain = mDNStrue; in handle_regservice_request()
2387 if (!ConstructServiceName(&srv, &request->u.servicereg.name, &request->u.servicereg.type, &d)) in handle_regservice_request()
2390 request->u.servicereg.name.c, request->u.servicereg.type.c, d.c); goto bad_param; in handle_regservice_request()
2393 if (!MakeDomainNameFromDNSNameString(&request->u.servicereg.host, host)) in handle_regservice_request()
2395 request->u.servicereg.autorename = (flags & kDNSServiceFlagsNoAutoRename ) == 0; in handle_regservice_request()
2396 request->u.servicereg.allowremotequery = (flags & kDNSServiceFlagsAllowRemoteQuery) != 0; in handle_regservice_request()
2401 if (!mDNSIPPortIsZero(request->u.servicereg.port)) in handle_regservice_request()
2403 int count = CountExistingRegistrations(&srv, request->u.servicereg.port); in handle_regservice_request()
2405 …plication[%d](%s) registered %d identical instances of service %##s port %u.", request->process_id, in handle_regservice_request()
2406 request->pid_name, count+1, srv.c, mDNSVal16(request->u.servicereg.port)); in handle_regservice_request()
2411 if (shouldUseBLE(InterfaceID, 0, &request->u.servicereg.type, &d)) in handle_regservice_request()
2413 request->flags |= (kDNSServiceFlagsAutoTrigger | kDNSServiceFlagsIncludeAWDL); in handle_regservice_request()
2420request->request_id, request->flags, interfaceIndex, name, request->u.servicereg.type_as_string, d… in handle_regservice_request()
2421 mDNSVal16(request->u.servicereg.port), request->process_id, request->pid_name); in handle_regservice_request()
2429 request->terminate = NULL; in handle_regservice_request()
2433 (request->u.servicereg.default_domain || IsLocalDomain(&d))) in handle_regservice_request()
2435 err = _handle_regservice_request_with_trust(request, &d); in handle_regservice_request()
2436 if (err == mStatus_NoAuth && request->u.servicereg.txtdata) in handle_regservice_request()
2438 freeL("service_info txtdata", request->u.servicereg.txtdata); in handle_regservice_request()
2439 request->u.servicereg.txtdata = NULL; in handle_regservice_request()
2444 err = _handle_regservice_request_start(request, &d); in handle_regservice_request()
2447 err = _handle_regservice_request_start(request, &d); in handle_regservice_request()
2453 freeL("handle_regservice_request (txtdata)", request->u.servicereg.txtdata); in handle_regservice_request()
2454 request->u.servicereg.txtdata = NULL; in handle_regservice_request()
2624 request_state *request; in udsserver_automatic_browse_domain_changed() local
2627 for (request = all_requests; request; request = request->next) in udsserver_automatic_browse_domain_changed()
2629 … if (request->terminate != browse_termination_callback) continue; // Not a browse operation in udsserver_automatic_browse_domain_changed()
2630 …if (!request->u.browser.default_domain) continue; // Not an auto-browse operation in udsserver_automatic_browse_domain_changed()
2631 if (!d->uid || SystemUID(request->uid) || request->uid == d->uid) in udsserver_automatic_browse_domain_changed()
2633 browser_t **ptr = &request->u.browser.browsers; in udsserver_automatic_browse_domain_changed()
2638 if (!*ptr) add_domain_to_browser(request, &d->name); in udsserver_automatic_browse_domain_changed()
2648 if (!p->uid || SystemUID(request->uid) || request->uid == p->uid) in udsserver_automatic_browse_domain_changed()
2920 mDNSlocal mStatus _handle_browse_request_start(request_state *request, const char * domain) in _handle_browse_request_start() argument
2925 request->terminate = browse_termination_callback; in _handle_browse_request_start()
2930 err = add_domain_to_browser(request, &d); in _handle_browse_request_start()
2936 if (!sdom->uid || SystemUID(request->uid) || request->uid == sdom->uid) in _handle_browse_request_start()
2938 err = add_domain_to_browser(request, &sdom->name); in _handle_browse_request_start()
2952 mDNSlocal void _return_browse_request_error(request_state *request, mStatus error) in _return_browse_request_error() argument
2956 GenerateBrowseReply(NULL, 0, request, &rep, browse_reply_op, 0, error); in _return_browse_request_error()
2959 … "[R%d] DNSServiceBrowse _return_browse_request_error: error (%d)", request->request_id, error); in _return_browse_request_error()
2961 append_reply(request, rep); in _return_browse_request_error()
2964 mDNSlocal mStatus _handle_browse_request_with_trust(request_state *request, const char * domain) in _handle_browse_request_with_trust() argument
2967 if (audit_token_to_pid(request->audit_token) == 0) in _handle_browse_request_with_trust()
2969 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_browse_request_with_trust()
2970 err = _handle_browse_request_start(request, domain); in _handle_browse_request_with_trust()
2976 (void)ConvertDomainNameToCString(&request->u.browser.regtype, typestr); in _handle_browse_request_with_trust()
2978 … mdns_trust_status_t status = mdns_trust_check_bonjour(request->audit_token, typestr, &flags); in _handle_browse_request_with_trust()
2984 mdns_trust_t trust = mdns_trust_create(request->audit_token, typestr, flags); in _handle_browse_request_with_trust()
3015 error = _handle_browse_request_start(request, _domain); in _handle_browse_request_with_trust()
3020 _return_browse_request_error(request, error); in _handle_browse_request_with_trust()
3026 request->trust = trust; in _handle_browse_request_with_trust()
3037 err = _handle_browse_request_start(request, domain); in _handle_browse_request_with_trust()
3050 mDNSlocal mStatus handle_browse_request(request_state *request) in handle_browse_request() argument
3058 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_browse_request()
3059 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_browse_request()
3079 if (get_string(&request->msgptr, request->msgend, regtype, sizeof(regtype)) < 0 || in handle_browse_request()
3080 …get_string(&request->msgptr, request->msgend, domain, sizeof(domain )) < 0) return(mStatus_BadPar… in handle_browse_request()
3082 …if (!request->msgptr) { LogMsg("%3d: DNSServiceBrowse(unreadable parameters)", request->sd); retur… in handle_browse_request()
3084 request->flags = flags; in handle_browse_request()
3085 request->interfaceIndex = interfaceIndex; in handle_browse_request()
3103 request->u.browser.ForceMCast = (flags & kDNSServiceFlagsForceMulticast) != 0; in handle_browse_request()
3104 request->u.browser.interface_id = InterfaceID; in handle_browse_request()
3105 AssignDomainName(&request->u.browser.regtype, &typedn); in handle_browse_request()
3106 request->u.browser.default_domain = !domain[0]; in handle_browse_request()
3107 request->u.browser.browsers = NULL; in handle_browse_request()
3110request->request_id, request->flags, interfaceIndex, DM_NAME_PARAM(&request->u.browser.regtype), d… in handle_browse_request()
3111 request->process_id, request->pid_name); in handle_browse_request()
3113 if (request->u.browser.default_domain) in handle_browse_request()
3118 request->request_id, request->process_id, request->pid_name); in handle_browse_request()
3124 request->terminate = NULL; in handle_browse_request()
3131 (request->u.browser.default_domain || IsLocalDomain(&d) || request->u.browser.ForceMCast)) in handle_browse_request()
3133 err = _handle_browse_request_with_trust(request, domain); in handle_browse_request()
3137 err = _handle_browse_request_start(request, domain); in handle_browse_request()
3140 err = _handle_browse_request_start(request, domain); in handle_browse_request()
3152 mDNSlocal void resolve_termination_callback(request_state *request) in resolve_termination_callback() argument
3156request->request_id, request->flags, request->interfaceIndex, DM_NAME_PARAM(&request->u.resolve.qt… in resolve_termination_callback()
3157 request->process_id, request->pid_name); in resolve_termination_callback()
3158 mDNS_StopQuery(&mDNSStorage, &request->u.resolve.qtxt); in resolve_termination_callback()
3159 mDNS_StopQuery(&mDNSStorage, &request->u.resolve.qsrv); in resolve_termination_callback()
3160 LogMcastQ(&request->u.resolve.qsrv, request, q_stop); in resolve_termination_callback()
3162 if (request->u.resolve.external_advertise) in resolve_termination_callback()
3164 …ternal_stop_resolving_service(request->u.resolve.qsrv.InterfaceID, &request->u.resolve.qsrv.qname,… in resolve_termination_callback()
3175 mDNSlocal mStatus _handle_resolve_request_start(request_state *request, const _resolve_start_params… in _handle_resolve_request_start() argument
3179 err = mDNS_StartQuery(&mDNSStorage, &request->u.resolve.qsrv); in _handle_resolve_request_start()
3183 err = mDNS_StartQuery(&mDNSStorage, &request->u.resolve.qtxt); in _handle_resolve_request_start()
3186 mDNS_StopQuery(&mDNSStorage, &request->u.resolve.qsrv); in _handle_resolve_request_start()
3190 request->terminate = resolve_termination_callback; in _handle_resolve_request_start()
3191 LogMcastQ(&request->u.resolve.qsrv, request, q_start); in _handle_resolve_request_start()
3193 if (callExternalHelpers(params->InterfaceID, &params->fqdn, request->flags)) in _handle_resolve_request_start()
3195 request->u.resolve.external_advertise = mDNStrue; in _handle_resolve_request_start()
3197 …rnal_start_resolving_service(params->InterfaceID, &params->fqdn, request->flags, request->process_… in _handle_resolve_request_start()
3272 mDNSlocal void _return_resolve_request_error(request_state * request, mStatus error) in _return_resolve_request_error() argument
3280 … "[R%u] DNSServiceResolve _return_resolve_request_error: error(%d)", request->request_id, error); in _return_resolve_request_error()
3290 rep = create_reply(resolve_reply_op, len, request); in _return_resolve_request_error()
3304 append_reply(request, rep); in _return_resolve_request_error()
3307 mDNSlocal mStatus _handle_resolve_request_with_trust(request_state *request, const _resolve_start_p… in _handle_resolve_request_with_trust() argument
3310 if (audit_token_to_pid(request->audit_token) == 0) in _handle_resolve_request_with_trust()
3312 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_resolve_request_with_trust()
3313 err = _handle_resolve_request_start(request, params); in _handle_resolve_request_with_trust()
3318 …mdns_trust_status_t status = mdns_trust_check_bonjour(request->audit_token, params->regtype, &flag… in _handle_resolve_request_with_trust()
3324 … mdns_trust_t trust = mdns_trust_create(request->audit_token, params->regtype, flags); in _handle_resolve_request_with_trust()
3353 error = _handle_resolve_request_start(request, _params); in _handle_resolve_request_with_trust()
3358 _return_resolve_request_error(request, error); in _handle_resolve_request_with_trust()
3364 request->trust = trust; in _handle_resolve_request_with_trust()
3375 err = _handle_resolve_request_start(request, params); in _handle_resolve_request_with_trust()
3388 mDNSlocal mStatus handle_resolve_request(request_state *request) in handle_resolve_request() argument
3395 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_resolve_request()
3396 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_resolve_request()
3426 if (get_string(&request->msgptr, request->msgend, name, sizeof(name )) < 0 || in handle_resolve_request()
3427 get_string(&request->msgptr, request->msgend, params.regtype, sizeof(params.regtype)) < 0 || in handle_resolve_request()
3428 get_string(&request->msgptr, request->msgend, domain, sizeof(domain )) < 0) in handle_resolve_request()
3431 …if (!request->msgptr) { LogMsg("%3d: DNSServiceResolve(unreadable parameters)", request->sd); retu… in handle_resolve_request()
3436 mDNSPlatformMemZero(&request->u.resolve, sizeof(request->u.resolve)); in handle_resolve_request()
3447 request->flags = flags; in handle_resolve_request()
3448 request->interfaceIndex = interfaceIndex; in handle_resolve_request()
3451 request->u.resolve.qsrv.InterfaceID = params.InterfaceID; in handle_resolve_request()
3452 request->u.resolve.qsrv.flags = flags; in handle_resolve_request()
3453 AssignDomainName(&request->u.resolve.qsrv.qname, &params.fqdn); in handle_resolve_request()
3454 request->u.resolve.qsrv.qtype = kDNSType_SRV; in handle_resolve_request()
3455 request->u.resolve.qsrv.qclass = kDNSClass_IN; in handle_resolve_request()
3456 request->u.resolve.qsrv.LongLived = (flags & kDNSServiceFlagsLongLivedQuery ) != 0; in handle_resolve_request()
3457 request->u.resolve.qsrv.ExpectUnique = mDNStrue; in handle_resolve_request()
3458 request->u.resolve.qsrv.ForceMCast = (flags & kDNSServiceFlagsForceMulticast ) != 0; in handle_resolve_request()
3459 request->u.resolve.qsrv.ReturnIntermed = (flags & kDNSServiceFlagsReturnIntermediates) != 0; in handle_resolve_request()
3460 request->u.resolve.qsrv.SuppressUnusable = mDNSfalse; in handle_resolve_request()
3461 request->u.resolve.qsrv.AppendSearchDomains = 0; in handle_resolve_request()
3462 request->u.resolve.qsrv.TimeoutQuestion = 0; in handle_resolve_request()
3463 request->u.resolve.qsrv.WakeOnResolve = (flags & kDNSServiceFlagsWakeOnResolve) != 0; in handle_resolve_request()
3464request->u.resolve.qsrv.UseBackgroundTraffic = (flags & kDNSServiceFlagsBackgroundTrafficClass) !=… in handle_resolve_request()
3465 request->u.resolve.qsrv.ProxyQuestion = 0; in handle_resolve_request()
3466 request->u.resolve.qsrv.pid = request->process_id; in handle_resolve_request()
3467 request->u.resolve.qsrv.euid = request->uid; in handle_resolve_request()
3468 request->u.resolve.qsrv.QuestionCallback = resolve_result_callback; in handle_resolve_request()
3469 request->u.resolve.qsrv.QuestionContext = request; in handle_resolve_request()
3471 request->u.resolve.qtxt.InterfaceID = params.InterfaceID; in handle_resolve_request()
3472 request->u.resolve.qtxt.flags = flags; in handle_resolve_request()
3473 AssignDomainName(&request->u.resolve.qtxt.qname, &params.fqdn); in handle_resolve_request()
3474 request->u.resolve.qtxt.qtype = kDNSType_TXT; in handle_resolve_request()
3475 request->u.resolve.qtxt.qclass = kDNSClass_IN; in handle_resolve_request()
3476 request->u.resolve.qtxt.LongLived = (flags & kDNSServiceFlagsLongLivedQuery ) != 0; in handle_resolve_request()
3477 request->u.resolve.qtxt.ExpectUnique = mDNStrue; in handle_resolve_request()
3478 request->u.resolve.qtxt.ForceMCast = (flags & kDNSServiceFlagsForceMulticast ) != 0; in handle_resolve_request()
3479 request->u.resolve.qtxt.ReturnIntermed = (flags & kDNSServiceFlagsReturnIntermediates) != 0; in handle_resolve_request()
3480 request->u.resolve.qtxt.SuppressUnusable = mDNSfalse; in handle_resolve_request()
3481 request->u.resolve.qtxt.AppendSearchDomains = 0; in handle_resolve_request()
3482 request->u.resolve.qtxt.TimeoutQuestion = 0; in handle_resolve_request()
3483 request->u.resolve.qtxt.WakeOnResolve = 0; in handle_resolve_request()
3484request->u.resolve.qtxt.UseBackgroundTraffic = (flags & kDNSServiceFlagsBackgroundTrafficClass) !=… in handle_resolve_request()
3485 request->u.resolve.qtxt.ProxyQuestion = 0; in handle_resolve_request()
3486 request->u.resolve.qtxt.pid = request->process_id; in handle_resolve_request()
3487 request->u.resolve.qtxt.euid = request->uid; in handle_resolve_request()
3488 request->u.resolve.qtxt.QuestionCallback = resolve_result_callback; in handle_resolve_request()
3489 request->u.resolve.qtxt.QuestionContext = request; in handle_resolve_request()
3491request->u.resolve.ReportTime = NonZeroTime(mDNS_TimeNow(&mDNSStorage) + 130 * mDNSPlat… in handle_resolve_request()
3493 request->u.resolve.external_advertise = mDNSfalse; in handle_resolve_request()
3496 if (!AuthorizedDomain(request, &fqdn, AutoBrowseDomains)) return(mStatus_NoError); in handle_resolve_request()
3502request->request_id, flags, interfaceIndex, DM_NAME_PARAM(&request->u.resolve.qsrv.qname), in handle_resolve_request()
3503 request->process_id, request->pid_name); in handle_resolve_request()
3505 request->terminate = NULL; in handle_resolve_request()
3511 (IsLocalDomain(&d) || request->u.resolve.qsrv.ForceMCast)) in handle_resolve_request()
3513 err = _handle_resolve_request_with_trust(request, &params); in handle_resolve_request()
3517 err = _handle_resolve_request_start(request, &params); in handle_resolve_request()
3520 err = _handle_resolve_request_start(request, &params); in handle_resolve_request()
3627 mDNSlocal void queryrecord_termination_callback(request_state *request) in queryrecord_termination_callback() argument
3631 request->request_id, request->flags, request->interfaceIndex, in queryrecord_termination_callback()
3632 DM_NAME_PARAM(QueryRecordClientRequestGetQName(&request->u.queryrecord)), in queryrecord_termination_callback()
3633 …DNSTypeName(QueryRecordClientRequestGetType(&request->u.queryrecord)), request->process_id, reques… in queryrecord_termination_callback()
3635 QueryRecordClientRequestStop(&request->u.queryrecord); in queryrecord_termination_callback()
3672 mDNSlocal mStatus _handle_queryrecord_request_start(request_state *request, const _queryrecord_star… in _handle_queryrecord_request_start() argument
3676 request->terminate = queryrecord_termination_callback; in _handle_queryrecord_request_start()
3680 queryParams.requestID = request->request_id; in _handle_queryrecord_request_start()
3686 queryParams.effectivePID = request->validUUID ? 0 : request->process_id; in _handle_queryrecord_request_start()
3687 queryParams.effectiveUUID = request->validUUID ? request->uuid : mDNSNULL; in _handle_queryrecord_request_start()
3688 queryParams.peerUID = request->uid; in _handle_queryrecord_request_start()
3691 queryParams.customID = request->custom_service_id; in _handle_queryrecord_request_start()
3694 queryParams.peerAuditToken = &request->audit_token; in _handle_queryrecord_request_start()
3696 …err = QueryRecordClientRequestStart(&request->u.queryrecord, &queryParams, queryrecord_result_repl… in _handle_queryrecord_request_start()
3702 mDNSlocal void _return_queryrecord_request_error(request_state * request, mStatus error) in _return_queryrecord_request_error() argument
3711request->request_id, request->hdr.op == query_request ? "QueryRecord" : "GetAddrInfo", error); in _return_queryrecord_request_error()
3721 …rep = create_reply(request->hdr.op == query_request ? query_reply_op : addrinfo_reply_op, len, req… in _return_queryrecord_request_error()
3736 append_reply(request, rep); in _return_queryrecord_request_error()
3739 mDNSlocal mStatus _handle_queryrecord_request_with_trust(request_state *request, const _queryrecord… in _handle_queryrecord_request_with_trust() argument
3742 if (audit_token_to_pid(request->audit_token) == 0) in _handle_queryrecord_request_with_trust()
3744 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_queryrecord_request_with_trust()
3745 err = _handle_queryrecord_request_start(request, params); in _handle_queryrecord_request_with_trust()
3765 …mdns_trust_status_t status = mdns_trust_check_query(request->audit_token, params->qname, service_p… in _handle_queryrecord_request_with_trust()
3771 mdns_trust_t trust = mdns_trust_create(request->audit_token, service_ptr, flags); in _handle_queryrecord_request_with_trust()
3800 error = _handle_queryrecord_request_start(request, _params); in _handle_queryrecord_request_with_trust()
3805 _return_queryrecord_request_error(request, error); in _handle_queryrecord_request_with_trust()
3811 request->trust = trust; in _handle_queryrecord_request_with_trust()
3822 err = _handle_queryrecord_request_start(request, params); in _handle_queryrecord_request_with_trust()
3835 mDNSlocal mStatus handle_queryrecord_request(request_state *request) in handle_queryrecord_request() argument
3840 params.flags = get_flags(&request->msgptr, request->msgend); in handle_queryrecord_request()
3841 params.interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_queryrecord_request()
3842 if (get_string(&request->msgptr, request->msgend, params.qname, sizeof(params.qname)) < 0) in handle_queryrecord_request()
3847 params.qtype = get_uint16(&request->msgptr, request->msgend); in handle_queryrecord_request()
3848 params.qclass = get_uint16(&request->msgptr, request->msgend); in handle_queryrecord_request()
3850 if (!request->msgptr) in handle_queryrecord_request()
3853 "[R%d] DNSServiceQueryRecord(unreadable parameters)", request->request_id); in handle_queryrecord_request()
3861 if (request->msgptr && (request->hdr.ipc_flags & IPC_FLAGS_TRAILING_TLVS)) in handle_queryrecord_request()
3864 const mDNSu8 *const start = (const mDNSu8 *)request->msgptr; in handle_queryrecord_request()
3865 const mDNSu8 *const end = (const mDNSu8 *)request->msgend; in handle_queryrecord_request()
3869 request->custom_service_id = Querier_RegisterCustomDNSServiceWithPListData(data, len); in handle_queryrecord_request()
3874 request->flags = params.flags; in handle_queryrecord_request()
3875 request->interfaceIndex = params.interfaceIndex; in handle_queryrecord_request()
3879request->request_id, request->flags, request->interfaceIndex, params.qname, DNSTypeName(params.qty… in handle_queryrecord_request()
3880 request->pid_name); in handle_queryrecord_request()
3882 mDNSPlatformMemZero(&request->u.queryrecord, (mDNSu32)sizeof(request->u.queryrecord)); in handle_queryrecord_request()
3883 request->terminate = NULL; in handle_queryrecord_request()
3888 err = _handle_queryrecord_request_with_trust(request, &params); in handle_queryrecord_request()
3892 err = _handle_queryrecord_request_start(request, &params); in handle_queryrecord_request()
3895 err = _handle_queryrecord_request_start(request, &params); in handle_queryrecord_request()
3908 mDNSlocal reply_state *format_enumeration_reply(request_state *request, in format_enumeration_reply() argument
3920 reply = create_reply(enumeration_reply_op, len, request); in format_enumeration_reply()
3929 mDNSlocal void enum_termination_callback(request_state *request) in enum_termination_callback() argument
3932 if (request->u.enumeration.flags & kDNSServiceFlagsRegistrationDomains) in enum_termination_callback()
3934 …erviceEnumeration Cancel WAB Registration PID[%d](%s)", request->sd, request->process_id, request-… in enum_termination_callback()
3939 …: DNSServiceEnumeration Cancel WAB Browse PID[%d](%s)", request->sd, request->process_id, request-… in enum_termination_callback()
3941 mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_autoall); in enum_termination_callback()
3943 mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_all); in enum_termination_callback()
3944 mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_default); in enum_termination_callback()
3951 request_state *request = question->QuestionContext; in enum_result_callback() local
3959 …if (!AuthorizedDomain(request, &answer->rdata->u.name, request->u.enumeration.flags ? AutoRegistra… in enum_result_callback()
3964 if (question == &request->u.enumeration.q_default && !AddRecord) return; in enum_result_callback()
3969 if (question == &request->u.enumeration.q_default) flags |= kDNSServiceFlagsDefault; in enum_result_callback()
3976 …reply = format_enumeration_reply(request, domain, flags, kDNSServiceInterfaceIndexAny, kDNSService… in enum_result_callback()
3981request->request_id, mDNSVal16(question->TargetQID), question->qname.c[0], &question->qname.c[1], in enum_result_callback()
3984 append_reply(request, reply); in enum_result_callback()
3987 mDNSlocal mStatus handle_enum_request(request_state *request) in handle_enum_request() argument
3990 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_enum_request()
3994 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_enum_request()
3998 if (!request->msgptr) in handle_enum_request()
3999 …{ LogMsg("%3d: DNSServiceEnumerateDomains(unreadable parameters)", request->sd); return(mStatus_Ba… in handle_enum_request()
4001 request->flags = flags; in handle_enum_request()
4002 request->interfaceIndex = interfaceIndex; in handle_enum_request()
4005 request->u.enumeration.flags = reg; in handle_enum_request()
4009 request->u.enumeration.q_all.QuestionContext = request; in handle_enum_request()
4010 request->u.enumeration.q_default.QuestionContext = request; in handle_enum_request()
4011 if (!reg) request->u.enumeration.q_autoall.QuestionContext = request; in handle_enum_request()
4017 LogOperation("%3d: DNSServiceEnumerateDomains(%X=%s)", request->sd, flags, in handle_enum_request()
4020 … = mDNS_GetDomains(&mDNSStorage, &request->u.enumeration.q_all, t_all, NULL, InterfaceID, enum_res… in handle_enum_request()
4023 …DNS_GetDomains(&mDNSStorage, &request->u.enumeration.q_default, t_default, NULL, InterfaceID, enum… in handle_enum_request()
4024 if (err) mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_all); in handle_enum_request()
4027 …ins(&mDNSStorage, &request->u.enumeration.q_autoall, mDNS_DomainTypeBrowseAutomatic, NULL, Interfa… in handle_enum_request()
4030 mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_all); in handle_enum_request()
4031 mDNS_StopGetDomains(&mDNSStorage, &request->u.enumeration.q_default); in handle_enum_request()
4034 if (!err) request->terminate = enum_termination_callback; in handle_enum_request()
4041 …ceEnumerateDomains Start WAB Registration PID[%d](%s)", request->sd, request->process_id, request-… in handle_enum_request()
4046 …SServiceEnumerateDomains Start WAB Browse PID[%d](%s)", request->sd, request->process_id, request-… in handle_enum_request()
4060 mDNSlocal mStatus handle_reconfirm_request(request_state *request) in handle_reconfirm_request() argument
4063 AuthRecord *rr = read_rr_from_ipc_msg(request, 0, 0); in handle_reconfirm_request()
4071 request->sd, RRDisplayString(&mDNSStorage, &rr->resrec), in handle_reconfirm_request()
4073 request->process_id, request->pid_name, status); in handle_reconfirm_request()
4081 mDNSlocal mStatus handle_release_request(request_state *request) in handle_release_request() argument
4088 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_release_request()
4090 if (get_string(&request->msgptr, request->msgend, name, sizeof(name )) < 0 || in handle_release_request()
4091 get_string(&request->msgptr, request->msgend, regtype, sizeof(regtype)) < 0 || in handle_release_request()
4092 get_string(&request->msgptr, request->msgend, domain, sizeof(domain )) < 0) in handle_release_request()
4098 if (!request->msgptr) in handle_release_request()
4100 LogMsg("%3d: PeerConnectionRelease(unreadable parameters)", request->sd); in handle_release_request()
4112request->request_id, flags, DM_NAME_PARAM(&instance), request->process_id, request->pid_name); in handle_release_request()
4122 mDNSlocal mStatus handle_release_request(request_state *request) in handle_release_request() argument
4124 (void) request; in handle_release_request()
4130 mDNSlocal mStatus handle_setdomain_request(request_state *request) in handle_setdomain_request() argument
4134 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_setdomain_request()
4136 if (get_string(&request->msgptr, request->msgend, domainstr, sizeof(domainstr)) < 0 || in handle_setdomain_request()
4138 …{ LogMsg("%3d: DNSServiceSetDefaultDomainForUser(unreadable parameters)", request->sd); return(mSt… in handle_setdomain_request()
4140 LogOperation("%3d: DNSServiceSetDefaultDomainForUser(%##s)", request->sd, domain.c); in handle_setdomain_request()
4151 mDNSlocal void handle_getproperty_request(request_state *request) in handle_getproperty_request() argument
4155 if (get_string(&request->msgptr, request->msgend, prop, sizeof(prop)) >= 0) in handle_getproperty_request()
4158 "[R%d] DNSServiceGetProperty(" PUB_S ")", request->request_id, prop); in handle_getproperty_request()
4162 send_all(request->sd, (const char *)&x, sizeof(x)); in handle_getproperty_request()
4168 send_all(request->sd, (const char *)&BadParamErr, sizeof(BadParamErr)); in handle_getproperty_request()
4175 mDNSlocal void handle_connection_delegate_request(request_state *request) in handle_connection_delegate_request() argument
4182 request->request_id, request->process_id, request->pid_name); in handle_connection_delegate_request()
4183 request->terminate = connection_termination; in handle_connection_delegate_request()
4186 pid = get_uint32(&request->msgptr, request->msgend); in handle_connection_delegate_request()
4191 if (getsockopt(request->sd, SOL_LOCAL, LOCAL_PEEREPID, &request->process_id, &len) != 0) in handle_connection_delegate_request()
4197 …if (proc_pidinfo(request->process_id, PROC_PIDT_SHORTBSDINFO, 1, &proc, PROC_PIDT_SHORTBSDINFO_SIZ… in handle_connection_delegate_request()
4199 mDNSPlatformStrLCopy(request->pid_name, proc.pbsi_comm, sizeof(request->pid_name)); in handle_connection_delegate_request()
4200 …"handle_connection_delegate_request: process id %d, name %s", request->process_id, request->pid_na… in handle_connection_delegate_request()
4207 if (getsockopt(request->sd, SOL_LOCAL, LOCAL_PEEREUUID, request->uuid, &len) != 0) in handle_connection_delegate_request()
4212 request->validUUID = mDNStrue; in handle_connection_delegate_request()
4217 mDNSlocal void handle_connection_delegate_request(request_state *request) in handle_connection_delegate_request() argument
4219 (void) request; in handle_connection_delegate_request()
4237 mDNSlocal void port_mapping_termination_callback(request_state *request) in port_mapping_termination_callback() argument
4240 request->request_id, DNSServiceProtocol(request->u.pm.NATinfo.Protocol), in port_mapping_termination_callback()
4241 …mDNSVal16(request->u.pm.NATinfo.IntPort), mDNSVal16(request->u.pm.ReqExt), request->u.pm.NATinfo.N… in port_mapping_termination_callback()
4242 request->process_id, request->pid_name); in port_mapping_termination_callback()
4244 mDNS_StopNATOperation(&mDNSStorage, &request->u.pm.NATinfo); in port_mapping_termination_callback()
4250 request_state *request = (request_state *)n->clientContext; in port_mapping_create_request_callback() local
4255 …if (!request) { LogMsg("port_mapping_create_request_callback called with unknown request_state obj… in port_mapping_create_request_callback()
4264 rep = create_reply(port_mapping_reply_op, replyLen, request); in port_mapping_create_request_callback()
4272 *data++ = request->u.pm.NATinfo.ExternalAddress.b[0]; in port_mapping_create_request_callback()
4273 *data++ = request->u.pm.NATinfo.ExternalAddress.b[1]; in port_mapping_create_request_callback()
4274 *data++ = request->u.pm.NATinfo.ExternalAddress.b[2]; in port_mapping_create_request_callback()
4275 *data++ = request->u.pm.NATinfo.ExternalAddress.b[3]; in port_mapping_create_request_callback()
4276 *data++ = DNSServiceProtocol(request->u.pm.NATinfo.Protocol); in port_mapping_create_request_callback()
4277 *data++ = request->u.pm.NATinfo.IntPort.b[0]; in port_mapping_create_request_callback()
4278 *data++ = request->u.pm.NATinfo.IntPort.b[1]; in port_mapping_create_request_callback()
4279 *data++ = request->u.pm.NATinfo.ExternalPort.b[0]; in port_mapping_create_request_callback()
4280 *data++ = request->u.pm.NATinfo.ExternalPort.b[1]; in port_mapping_create_request_callback()
4281 put_uint32(request->u.pm.NATinfo.Lifetime, &data); in port_mapping_create_request_callback()
4285 request->request_id, DNSServiceProtocol(request->u.pm.NATinfo.Protocol), in port_mapping_create_request_callback()
4286 …mDNSVal16(request->u.pm.NATinfo.IntPort), mDNSVal16(request->u.pm.ReqExt), request->u.pm.NATinfo.N… in port_mapping_create_request_callback()
4287 &request->u.pm.NATinfo.ExternalAddress, mDNSVal16(request->u.pm.NATinfo.ExternalPort), in port_mapping_create_request_callback()
4288 request->u.pm.NATinfo.Lifetime); in port_mapping_create_request_callback()
4290 append_reply(request, rep); in port_mapping_create_request_callback()
4293 mDNSlocal mStatus handle_port_mapping_request(request_state *request) in handle_port_mapping_request() argument
4298 DNSServiceFlags flags = get_flags(&request->msgptr, request->msgend); in handle_port_mapping_request()
4299 mDNSu32 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_port_mapping_request()
4301 mDNSu8 protocol = (mDNSu8)get_uint32(&request->msgptr, request->msgend); in handle_port_mapping_request()
4304 if (request->msgptr + 8 > request->msgend) request->msgptr = NULL; in handle_port_mapping_request()
4307 request->u.pm.NATinfo.IntPort.b[0] = *request->msgptr++; in handle_port_mapping_request()
4308 request->u.pm.NATinfo.IntPort.b[1] = *request->msgptr++; in handle_port_mapping_request()
4309 request->u.pm.ReqExt.b[0] = *request->msgptr++; in handle_port_mapping_request()
4310 request->u.pm.ReqExt.b[1] = *request->msgptr++; in handle_port_mapping_request()
4311 ttl = get_uint32(&request->msgptr, request->msgend); in handle_port_mapping_request()
4314 if (!request->msgptr) in handle_port_mapping_request()
4317 "[R%d] DNSServiceNATPortMappingCreate(unreadable parameters)", request->request_id); in handle_port_mapping_request()
4323 …if (!mDNSIPPortIsZero(request->u.pm.NATinfo.IntPort) || !mDNSIPPortIsZero(request->u.pm.ReqExt) ||… in handle_port_mapping_request()
4327 if (mDNSIPPortIsZero(request->u.pm.NATinfo.IntPort)) return(mStatus_BadParamErr); in handle_port_mapping_request()
4331 request->flags = flags; in handle_port_mapping_request()
4332 request->interfaceIndex = interfaceIndex; in handle_port_mapping_request()
4333request->u.pm.NATinfo.Protocol = !protocol ? NATOp_AddrRequest : (protocol == kDNSServicePro… in handle_port_mapping_request()
4335 request->u.pm.NATinfo.RequestedPort = request->u.pm.ReqExt; in handle_port_mapping_request()
4336 request->u.pm.NATinfo.NATLease = ttl; in handle_port_mapping_request()
4337 request->u.pm.NATinfo.clientCallback = port_mapping_create_request_callback; in handle_port_mapping_request()
4338 request->u.pm.NATinfo.clientContext = request; in handle_port_mapping_request()
4342request->request_id, protocol, mDNSVal16(request->u.pm.NATinfo.IntPort), mDNSVal16(request->u.pm.R… in handle_port_mapping_request()
4343 request->u.pm.NATinfo.NATLease, request->process_id, request->pid_name); in handle_port_mapping_request()
4344 err = mDNS_StartNATOperation(&mDNSStorage, &request->u.pm.NATinfo); in handle_port_mapping_request()
4346 else request->terminate = port_mapping_termination_callback; in handle_port_mapping_request()
4357 mDNSlocal void addrinfo_termination_callback(request_state *request) in addrinfo_termination_callback() argument
4361request->request_id, DM_NAME_PARAM(GetAddrInfoClientRequestGetQName(&request->u.addrinfo)), in addrinfo_termination_callback()
4362 request->process_id, request->pid_name); in addrinfo_termination_callback()
4364 GetAddrInfoClientRequestStop(&request->u.addrinfo); in addrinfo_termination_callback()
4375 mDNSlocal mStatus _handle_addrinfo_request_start(request_state *request, const _addrinfo_start_para… in _handle_addrinfo_request_start() argument
4379 request->terminate = addrinfo_termination_callback; in _handle_addrinfo_request_start()
4383 gaiParams.requestID = request->request_id; in _handle_addrinfo_request_start()
4385 gaiParams.interfaceIndex = request->interfaceIndex; in _handle_addrinfo_request_start()
4386 gaiParams.flags = request->flags; in _handle_addrinfo_request_start()
4388 gaiParams.effectivePID = request->validUUID ? 0 : request->process_id; in _handle_addrinfo_request_start()
4389 gaiParams.effectiveUUID = request->validUUID ? request->uuid : mDNSNULL; in _handle_addrinfo_request_start()
4390 gaiParams.peerUID = request->uid; in _handle_addrinfo_request_start()
4393 gaiParams.customID = request->custom_service_id; in _handle_addrinfo_request_start()
4396 gaiParams.peerAuditToken = &request->audit_token; in _handle_addrinfo_request_start()
4398 …err = GetAddrInfoClientRequestStart(&request->u.addrinfo, &gaiParams, queryrecord_result_reply, re… in _handle_addrinfo_request_start()
4405 mDNSlocal void _return_addrinfo_request_error(request_state * request, mStatus error) in _return_addrinfo_request_error() argument
4407 _return_queryrecord_request_error(request, error); in _return_addrinfo_request_error()
4410 mDNSlocal mStatus _handle_addrinfo_request_with_trust(request_state *request, const _addrinfo_start… in _handle_addrinfo_request_with_trust() argument
4413 if (audit_token_to_pid(request->audit_token) == 0) in _handle_addrinfo_request_with_trust()
4415 …_request_with_trust: no audit token for pid(%s %d)", request->request_id, request->pid_name, reque… in _handle_addrinfo_request_with_trust()
4416 err = _handle_addrinfo_request_start(request, params); in _handle_addrinfo_request_with_trust()
4421 …mdns_trust_status_t status = mdns_trust_check_getaddrinfo(request->audit_token, params->hostname, … in _handle_addrinfo_request_with_trust()
4427 mdns_trust_t trust = mdns_trust_create(request->audit_token, NULL, flags); in _handle_addrinfo_request_with_trust()
4456 error = _handle_addrinfo_request_start(request, _params); in _handle_addrinfo_request_with_trust()
4461 _return_addrinfo_request_error(request, error); in _handle_addrinfo_request_with_trust()
4467 request->trust = trust; in _handle_addrinfo_request_with_trust()
4478 err = _handle_addrinfo_request_start(request, params); in _handle_addrinfo_request_with_trust()
4491 mDNSlocal mStatus handle_addrinfo_request(request_state *request) in handle_addrinfo_request() argument
4498 flags = get_flags(&request->msgptr, request->msgend); in handle_addrinfo_request()
4499 interfaceIndex = get_uint32(&request->msgptr, request->msgend); in handle_addrinfo_request()
4500 params.protocols = get_uint32(&request->msgptr, request->msgend); in handle_addrinfo_request()
4501 if (get_string(&request->msgptr, request->msgend, params.hostname, sizeof(params.hostname)) < 0) in handle_addrinfo_request()
4506 if (!request->msgptr) in handle_addrinfo_request()
4508 LogMsg("%3d: DNSServiceGetAddrInfo(unreadable parameters)", request->sd); in handle_addrinfo_request()
4516 if (request->msgptr && (request->hdr.ipc_flags & IPC_FLAGS_TRAILING_TLVS)) in handle_addrinfo_request()
4519 const mDNSu8 *const start = (const mDNSu8 *)request->msgptr; in handle_addrinfo_request()
4520 const mDNSu8 *const end = (const mDNSu8 *)request->msgend; in handle_addrinfo_request()
4524 request->custom_service_id = Querier_RegisterCustomDNSServiceWithPListData(data, len); in handle_addrinfo_request()
4529 request->flags = flags; in handle_addrinfo_request()
4530 request->interfaceIndex = interfaceIndex; in handle_addrinfo_request()
4534request->request_id, request->flags, request->interfaceIndex, params.protocols, params.hostname, r… in handle_addrinfo_request()
4535 request->pid_name); in handle_addrinfo_request()
4537 mDNSPlatformMemZero(&request->u.addrinfo, (mDNSu32)sizeof(request->u.addrinfo)); in handle_addrinfo_request()
4538 request->terminate = NULL; in handle_addrinfo_request()
4543 err = _handle_addrinfo_request_with_trust(request, &params); in handle_addrinfo_request()
4547 err = _handle_addrinfo_request_start(request, &params); in handle_addrinfo_request()
4550 err = _handle_addrinfo_request_start(request, &params); in handle_addrinfo_request()
4565 request_state *request; in NewRequest() local
4567 request = (request_state *) callocL("request_state", sizeof(*request)); in NewRequest()
4568 if (!request) FatalError("ERROR: calloc"); in NewRequest()
4570 *p = request; in NewRequest()
4571 return(request); in NewRequest()
5057 request_state *request = NewRequest(); in connect_callback() local
5058 request->ts = t_morecoming; in connect_callback()
5059 request->sd = sd; in connect_callback()
5060 request->errsd = sd; in connect_callback()
5061 request->request_id = GetNewRequestID(); in connect_callback()
5062 set_peer_pid(request); in connect_callback()
5067 request->uid = x.cr_uid; // save the effective userid of the client in connect_callback()
5072 LogDebug("%3d: connect_callback: Adding FD for uid %u", request->sd, request->uid); in connect_callback()
5073 udsSupportAddFDToEventLoop(sd, request_callback, request, &request->platform_data); in connect_callback()