VirtualBox

Ignore:
Timestamp:
Jun 1, 2010 12:53:39 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
62226
Message:

slirp.c/activate_port_forwarding: Must used LIST_FOREACH_SAFE when removing the current element during a list enumeration.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Network/slirp/slirp.c

    r29855 r29946  
    473473    {
    474474        struct dns_entry *pDns = NULL;
    475         if (   cNameserversFound == 4 
     475        if (   cNameserversFound == 4
    476476            && fWarnTooManyDnsServers == 0
    477477            && sscanf(buff, "nameserver%*[ \t]%255s", buff2) == 1)
     
    480480            LogRel(("NAT: too many nameservers registered.\n"));
    481481        }
    482         if (   sscanf(buff, "nameserver%*[ \t]%255s", buff2) == 1 
     482        if (   sscanf(buff, "nameserver%*[ \t]%255s", buff2) == 1
    483483            && cNameserversFound < 4) /* Unix doesn't accept more than 4 name servers*/
    484484        {
     
    17211721static void activate_port_forwarding(PNATState pData, const uint8_t *h_source)
    17221722{
    1723     struct port_forward_rule *rule;
     1723    struct port_forward_rule *rule, *tmp;
    17241724
    17251725    /* check mac here */
    1726     LIST_FOREACH(rule, &pData->port_forward_rule_head, list)
     1726    LIST_FOREACH_SAFE(rule, &pData->port_forward_rule_head, list, tmp)
    17271727    {
    17281728        struct socket *so;
     
    17901790        lib = LibAliasInit(pData, NULL);
    17911791        flags = LibAliasSetMode(lib, 0, 0);
    1792         flags |= pData->i32AliasMode; 
     1792        flags |= pData->i32AliasMode;
    17931793        flags |= PKT_ALIAS_REVERSE; /* set reverse  */
    17941794        flags = LibAliasSetMode(lib, flags, ~0);
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette