Lines Matching defs:intf

218 mDNSlocal void SocketDataReady(mDNS *const m, PosixNetworkInterface *intf, int skt)
230 const mDNSInterfaceID InterfaceID = intf ? intf->coreIntf.InterfaceID : NULL;
277 if (!intf)
284 if (packetInfo.ipi_ifname[0] != 0) reject = (strcmp(packetInfo.ipi_ifname, intf->intfName) != 0);
285 else if (packetInfo.ipi_ifindex != -1) reject = (packetInfo.ipi_ifindex != intf->index);
291 &intf->coreIntf.ip, intf->intfName, intf->index, skt);
306 &senderAddr, &destAddr, &intf->coreIntf.ip, intf->intfName, intf->index, skt);
534 PosixNetworkInterface *intf;
539 intf = (PosixNetworkInterface*)(m->HostInterfaces);
540 while ((intf != NULL) && (strcmp(intf->intfName, intfName) != 0))
541 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
543 return intf;
548 PosixNetworkInterface *intf;
556 intf = (PosixNetworkInterface*)(m->HostInterfaces);
557 while ((intf != NULL) && (mDNSu32) intf->index != index)
558 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
560 return (mDNSInterfaceID) intf;
565 PosixNetworkInterface *intf;
574 intf = (PosixNetworkInterface*)(m->HostInterfaces);
575 while ((intf != NULL) && (mDNSInterfaceID) intf != id)
576 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
578 if (intf) return intf->index;
581 intf = gRecentInterfaces;
582 while ((intf != NULL) && (mDNSInterfaceID) intf != id)
583 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
585 return intf ? intf->index : 0;
590 mDNSlocal void FreePosixNetworkInterface(PosixNetworkInterface *intf)
592 assert(intf != NULL);
593 if (intf->intfName != NULL) free((void *)intf->intfName);
594 if (intf->multicastSocket4 != -1) assert(close(intf->multicastSocket4) == 0);
596 if (intf->multicastSocket6 != -1) assert(close(intf->multicastSocket6) == 0);
600 intf->LastSeen = mDNSPlatformUTC();
601 intf->coreIntf.next = &gRecentInterfaces->coreIntf;
602 gRecentInterfaces = intf;
612 PosixNetworkInterface *intf = (PosixNetworkInterface*)(m->HostInterfaces);
613 mDNS_DeregisterInterface(m, &intf->coreIntf, mDNSfalse);
614 if (gMDNSPlatformPosixVerboseLevel > 0) fprintf(stderr, "Deregistered interface %s\n", intf->intfName);
615 FreePosixNetworkInterface(intf);
880 PosixNetworkInterface *intf;
889 intf = (PosixNetworkInterface*)calloc(1, sizeof(*intf));
890 if (intf == NULL) { assert(0); err = ENOMEM; }
895 intf->intfName = strdup(intfName);
896 if (intf->intfName == NULL) { assert(0); err = ENOMEM; }
902 SockAddrTomDNSAddr(intfAddr, &intf->coreIntf.ip, NULL);
903 SockAddrTomDNSAddr(intfMask, &intf->coreIntf.mask, NULL);
905 //LogMsg("SetupOneInterface: %#a %#a", &intf->coreIntf.ip, &intf->coreIntf.mask);
906 strncpy(intf->coreIntf.ifname, intfName, sizeof(intf->coreIntf.ifname));
907 intf->coreIntf.ifname[sizeof(intf->coreIntf.ifname)-1] = 0;
908 intf->coreIntf.Advertise = m->AdvertiseLocalAddresses;
909 intf->coreIntf.McastTxRx = mDNStrue;
912 assert(intf->intfName != NULL); // intf->intfName already set up above
913 intf->index = intfIndex;
914 intf->multicastSocket4 = -1;
916 intf->multicastSocket6 = -1;
918 alias = SearchForInterfaceByName(m, intf->intfName);
919 if (alias == NULL) alias = intf;
920 intf->coreIntf.InterfaceID = (mDNSInterfaceID)alias;
922 if (alias != intf)
923 debugf("SetupOneInterface: %s %#a is an alias of %#a", intfName, &intf->coreIntf.ip, &alias->coreIntf.ip);
930 err = SetupSocket(intfAddr, MulticastDNSPort, intf->index, &alias->multicastSocket4);
933 err = SetupSocket(intfAddr, MulticastDNSPort, intf->index, &alias->multicastSocket6);
939 intf->coreIntf.DirectLink = mDNSfalse;
942 intf->coreIntf.DirectLink = mDNStrue;
944 intf->coreIntf.SupportsUnicastMDNSResponse = mDNStrue;
948 err = mDNS_RegisterInterface(m, &intf->coreIntf, mDNSfalse);
954 debugf("SetupOneInterface: %s %#a Registered", intf->intfName, &intf->coreIntf.ip);
956 fprintf(stderr, "Registered interface %s\n", intf->intfName);
960 // Use intfName instead of intf->intfName in the next line to avoid dereferencing NULL.
961 debugf("SetupOneInterface: %s %#a failed to register %d", intfName, &intf->coreIntf.ip, err);
962 if (intf) { FreePosixNetworkInterface(intf); intf = NULL; }
965 assert((err == 0) == (intf != NULL));
1551 mDNSexport mDNSBool mDNSPlatformValidRecordForInterface(AuthRecord *rr, const NetworkInterfaceInfo *intf)
1554 (void) intf;
1559 mDNSexport mDNSBool mDNSPlatformValidQuestionForInterface(DNSQuestion *q, const NetworkInterfaceInfo *intf)
1562 (void) intf;