Lines Matching defs:intf
230 mDNSlocal void SocketDataReady(mDNS *const m, PosixNetworkInterface *intf, int skt)
242 const mDNSInterfaceID InterfaceID = intf ? intf->coreIntf.InterfaceID : NULL;
289 if (!intf)
296 if (packetInfo.ipi_ifname[0] != 0) reject = (strcmp(packetInfo.ipi_ifname, intf->intfName) != 0);
297 else if (packetInfo.ipi_ifindex != -1) reject = (packetInfo.ipi_ifindex != intf->index);
303 &intf->coreIntf.ip, intf->intfName, intf->index, skt);
318 &senderAddr, &destAddr, &intf->coreIntf.ip, intf->intfName, intf->index, skt);
542 PosixNetworkInterface *intf;
547 intf = (PosixNetworkInterface*)(m->HostInterfaces);
548 while ((intf != NULL) && (strcmp(intf->intfName, intfName) != 0))
549 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
551 return intf;
556 PosixNetworkInterface *intf;
564 intf = (PosixNetworkInterface*)(m->HostInterfaces);
565 while ((intf != NULL) && (mDNSu32) intf->index != index)
566 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
568 return (mDNSInterfaceID) intf;
573 PosixNetworkInterface *intf;
582 intf = (PosixNetworkInterface*)(m->HostInterfaces);
583 while ((intf != NULL) && (mDNSInterfaceID) intf != id)
584 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
586 if (intf) return intf->index;
589 intf = gRecentInterfaces;
590 while ((intf != NULL) && (mDNSInterfaceID) intf != id)
591 intf = (PosixNetworkInterface *)(intf->coreIntf.next);
593 return intf ? intf->index : 0;
598 mDNSlocal void FreePosixNetworkInterface(PosixNetworkInterface *intf)
600 assert(intf != NULL);
601 if (intf->intfName != NULL) free((void *)intf->intfName);
602 if (intf->multicastSocket4 != -1) assert(close(intf->multicastSocket4) == 0);
604 if (intf->multicastSocket6 != -1) assert(close(intf->multicastSocket6) == 0);
608 intf->LastSeen = mDNSPlatformUTC();
609 intf->coreIntf.next = &gRecentInterfaces->coreIntf;
610 gRecentInterfaces = intf;
620 PosixNetworkInterface *intf = (PosixNetworkInterface*)(m->HostInterfaces);
621 mDNS_DeregisterInterface(m, &intf->coreIntf, mDNSfalse);
622 if (gMDNSPlatformPosixVerboseLevel > 0) fprintf(stderr, "Deregistered interface %s\n", intf->intfName);
623 FreePosixNetworkInterface(intf);
876 PosixNetworkInterface *intf;
885 intf = (PosixNetworkInterface*)malloc(sizeof(*intf));
886 if (intf == NULL) { assert(0); err = ENOMEM; }
891 intf->intfName = strdup(intfName);
892 if (intf->intfName == NULL) { assert(0); err = ENOMEM; }
898 SockAddrTomDNSAddr(intfAddr, &intf->coreIntf.ip, NULL);
899 SockAddrTomDNSAddr(intfMask, &intf->coreIntf.mask, NULL);
901 //LogMsg("SetupOneInterface: %#a %#a", &intf->coreIntf.ip, &intf->coreIntf.mask);
902 strncpy(intf->coreIntf.ifname, intfName, sizeof(intf->coreIntf.ifname));
903 intf->coreIntf.ifname[sizeof(intf->coreIntf.ifname)-1] = 0;
904 intf->coreIntf.Advertise = m->AdvertiseLocalAddresses;
905 intf->coreIntf.McastTxRx = mDNStrue;
908 assert(intf->intfName != NULL); // intf->intfName already set up above
909 intf->index = intfIndex;
910 intf->multicastSocket4 = -1;
912 intf->multicastSocket6 = -1;
914 alias = SearchForInterfaceByName(m, intf->intfName);
915 if (alias == NULL) alias = intf;
916 intf->coreIntf.InterfaceID = (mDNSInterfaceID)alias;
918 if (alias != intf)
919 debugf("SetupOneInterface: %s %#a is an alias of %#a", intfName, &intf->coreIntf.ip, &alias->coreIntf.ip);
926 err = SetupSocket(intfAddr, MulticastDNSPort, intf->index, &alias->multicastSocket4);
929 err = SetupSocket(intfAddr, MulticastDNSPort, intf->index, &alias->multicastSocket6);
935 intf->coreIntf.DirectLink = mDNSfalse;
938 intf->coreIntf.DirectLink = mDNStrue;
943 err = mDNS_RegisterInterface(m, &intf->coreIntf, mDNSfalse);
949 debugf("SetupOneInterface: %s %#a Registered", intf->intfName, &intf->coreIntf.ip);
951 fprintf(stderr, "Registered interface %s\n", intf->intfName);
955 // Use intfName instead of intf->intfName in the next line to avoid dereferencing NULL.
956 debugf("SetupOneInterface: %s %#a failed to register %d", intfName, &intf->coreIntf.ip, err);
957 if (intf) { FreePosixNetworkInterface(intf); intf = NULL; }
960 assert((err == 0) == (intf != NULL));
1546 mDNSexport mDNSBool mDNSPlatformValidRecordForInterface(AuthRecord *rr, const NetworkInterfaceInfo *intf)
1549 (void) intf;
1554 mDNSexport mDNSBool mDNSPlatformValidQuestionForInterface(DNSQuestion *q, const NetworkInterfaceInfo *intf)
1557 (void) intf;