]> xenbits.xensource.com Git - libvirt.git/commitdiff
Revert "Add support for <option> tag in network config"
authorLaine Stump <laine@laine.org>
Wed, 27 Feb 2013 15:55:24 +0000 (10:55 -0500)
committerLaine Stump <laine@laine.org>
Wed, 27 Feb 2013 15:55:24 +0000 (10:55 -0500)
This reverts commit 383ebc46947b0119123880c1ff9ae345fdb8d5f6.

We decided the xml for this feature needed more thought to make sure
we are doing it the best way, in particular wrt option values that
have multiple items.

docs/schemas/network.rng
src/conf/network_conf.c
src/conf/network_conf.h
src/network/bridge_driver.c
tests/networkxml2confdata/nat-network.conf
tests/networkxml2confdata/nat-network.xml
tests/networkxml2xmlin/netboot-network.xml
tests/networkxml2xmlin/netboot-proxy-network.xml
tests/networkxml2xmlout/netboot-network.xml
tests/networkxml2xmlout/netboot-proxy-network.xml

index da7d8adcde96ebcb4de1f36057da26973105bb26..6c3fae25a97d9ff049c4ab49cb9d464bf655c010 100644 (file)
                     </optional>
                   </element>
                 </optional>
-                <zeroOrMore>
-                  <element name="option">
-                    <attribute name="number"><ref name="uint8range"/></attribute>
-                    <attribute name="value"><text/></attribute>
-                  </element>
-                </zeroOrMore>
               </element>
             </optional>
           </element>
index 3fc01cf584b5588d287a13fbad37a8396471f35b..c022fe45410060567a4247485264673158e44204 100644 (file)
@@ -790,37 +790,6 @@ cleanup:
     return ret;
 }
 
-static int
-virNetworkDHCPOptionDefParseXML(const char *networkName,
-                                xmlNodePtr node,
-                                virNetworkDHCPOptionDefPtr option)
-{
-    char *number = NULL;
-    int ret = -1;
-
-    if (!(number = virXMLPropString(node, "number"))) {
-        virReportError(VIR_ERR_XML_ERROR,
-                       _("Option definition in IPv4 network '%s' "
-                         "must have number attribute"),
-                       networkName);
-        goto cleanup;
-    }
-    if (virStrToLong_ui(number, NULL, 10, &option->number) < 0) {
-        virReportError(VIR_ERR_XML_ERROR,
-                       _("Malformed <option> number attribute: %s"),
-                       number);
-        goto cleanup;
-    }
-    option->value = virXMLPropString(node, "value");
-
-    ret = 0;
-
-cleanup:
-    VIR_FREE(number);
-    return ret;
-}
-
-
 static int
 virNetworkDHCPDefParseXML(const char *networkName,
                           xmlNodePtr node,
@@ -882,17 +851,6 @@ virNetworkDHCPDefParseXML(const char *networkName,
             def->bootfile = file;
             def->bootserver = inaddr;
             VIR_FREE(server);
-        } else if (cur->type == XML_ELEMENT_NODE &&
-            xmlStrEqual(cur->name, BAD_CAST "option")) {
-            if (VIR_REALLOC_N(def->options, def->noptions + 1) < 0) {
-                virReportOOMError();
-                return -1;
-            }
-            if (virNetworkDHCPOptionDefParseXML(networkName, cur,
-                                                &def->options[def->noptions])) {
-                return -1;
-            }
-            def->noptions++;
         }
 
         cur = cur->next;
@@ -2229,12 +2187,6 @@ virNetworkIpDefFormat(virBufferPtr buf,
             virBufferAddLit(buf, "/>\n");
 
         }
-        for (ii = 0 ; ii < def->noptions ; ii++) {
-            virBufferAsprintf(buf, "<option number='%u'",
-                              def->options[ii].number);
-            virBufferEscapeString(buf, " value='%s'", def->options[ii].value);
-            virBufferAddLit(buf, "/>\n");
-        }
 
         virBufferAdjustIndent(buf, -2);
         virBufferAddLit(buf, "</dhcp>\n");
index c509915cc159ed2921860440955dbe7cae02b26b..6ce9a002684423e05bb0ac537495afd818adc0da 100644 (file)
@@ -71,13 +71,6 @@ struct _virNetworkDHCPHostDef {
     virSocketAddr ip;
 };
 
-typedef struct _virNetworkDHCPOptionDef virNetworkDHCPOptionDef;
-typedef virNetworkDHCPOptionDef *virNetworkDHCPOptionDefPtr;
-struct _virNetworkDHCPOptionDef {
-    unsigned int number;
-    char *value;
-};
-
 typedef struct _virNetworkDNSTxtDef virNetworkDNSTxtDef;
 typedef virNetworkDNSTxtDef *virNetworkDNSTxtDefPtr;
 struct _virNetworkDNSTxtDef {
@@ -137,13 +130,9 @@ struct _virNetworkIpDef {
     size_t nhosts;              /* Zero or more dhcp hosts */
     virNetworkDHCPHostDefPtr hosts;
 
-    size_t noptions;            /* Zero or more additional dhcp options */
-    virNetworkDHCPOptionDefPtr options;
-
     char *tftproot;
     char *bootfile;
     virSocketAddr bootserver;
-
    };
 
 typedef struct _virNetworkForwardIfDef virNetworkForwardIfDef;
index 0932cf8e5edbe258243511f88f069d665ddd0e87..31c8585ee1b6138506e79c31f07420d434198d77 100644 (file)
@@ -927,23 +927,6 @@ networkDnsmasqConfContents(virNetworkObjPtr network,
                     virBufferAsprintf(&configbuf, "dhcp-boot=%s\n", ipdef->bootfile);
                 }
             }
-
-            for (r = 0 ; r < ipdef->noptions ; r++) {
-                virBufferAsprintf(&configbuf, "dhcp-option=%u",
-                                  ipdef->options[r].number);
-                /* value is optional, and only needs quoting if it contains spaces */
-                if (ipdef->options[r].value) {
-                    const char *quote = "";
-
-                    if (strchr(ipdef->options[r].value, ' ') ||
-                        strchr(ipdef->options[r].value, '\\')) {
-                        quote = "\"";
-                    }
-                    virBufferAsprintf(&configbuf, ",%s%s%s",
-                                      quote, ipdef->options[r].value, quote);
-                }
-                virBufferAddLit(&configbuf, "\n");
-            }
         }
         ipdef = (ipdef == ipv6def) ? NULL : ipv6def;
     }
index ee41e2ae9907ffe0fb99cc65c8a18faed6a9b81b..beb714b134c3401281ad76e3713cf51537308406 100644 (file)
@@ -12,11 +12,6 @@ bind-dynamic
 interface=virbr0
 dhcp-range=192.168.122.2,192.168.122.254
 dhcp-no-override
-dhcp-option=42,192.168.122.20
-dhcp-option=23,50
-dhcp-option=40,libvirt
-dhcp-option=252,"\n"
-dhcp-option=253," leading and trailing spaces "
 dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases
 dhcp-lease-max=253
 dhcp-hostsfile=/var/lib/libvirt/dnsmasq/default.hostsfile
index 22ec533de445adeafbabd18aa01cf33ab71a35d7..eb71d9ea382e001fba20d9b6467e83dba1656822 100644 (file)
@@ -8,11 +8,6 @@
       <range start='192.168.122.2' end='192.168.122.254' />
       <host mac='00:16:3e:77:e2:ed' name='a.example.com' ip='192.168.122.10' />
       <host mac='00:16:3e:3e:a9:1a' name='b.example.com' ip='192.168.122.11' />
-      <option number='42' value='192.168.122.20'/>
-      <option number='23' value='50'/>
-      <option number='40' value='libvirt'/>
-      <option number='252' value='\n'/>
-      <option number='253' value=' leading and trailing spaces '/>
     </dhcp>
   </ip>
   <ip family='ipv4' address='192.168.123.1' netmask='255.255.255.0'>
index 09c11d4957626779cad4a69abf29e4c8127d2331..ed756630534aa3487c6d6977eba734a426a711a0 100644 (file)
@@ -9,7 +9,6 @@
     <dhcp>
       <range start="192.168.122.2" end="192.168.122.254" />
       <bootp file="pxeboot.img" />
-      <option number="252" value="\n"/>
     </dhcp>
   </ip>
 </network>
index 77b353ddc5b40570438b9d97aa675ed005d22966..ecb6738694fdda5e4ee8877087cc9f1590aed810 100644 (file)
@@ -8,7 +8,6 @@
     <dhcp>
       <range start="192.168.122.2" end="192.168.122.254" />
       <bootp file="pxeboot.img" server="10.20.30.40" />
-      <option number="252" value="\n"/>
     </dhcp>
   </ip>
 </network>
index f3a4c6bcfb5af48e485884e47d37c6c3c1959e27..b8a4d996fb394d9f853f4faf9ede0784e6df6a26 100644 (file)
@@ -9,7 +9,6 @@
     <dhcp>
       <range start='192.168.122.2' end='192.168.122.254' />
       <bootp file='pxeboot.img' />
-      <option number='252' value='\n'/>
     </dhcp>
   </ip>
 </network>
index 2c97bd0a81e4449b4b60e095444fb9c2339c1b95..e11c50b3eee0d4ca018ae81f2da4ade4f8dceaa3 100644 (file)
@@ -8,7 +8,6 @@
     <dhcp>
       <range start='192.168.122.2' end='192.168.122.254' />
       <bootp file='pxeboot.img' server='10.20.30.40' />
-      <option number='252' value='\n'/>
     </dhcp>
   </ip>
 </network>