]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Reintroduce pxe: syntax
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Thu, 2 Sep 2010 20:12:37 +0000 (22:12 +0200)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Thu, 2 Sep 2010 20:12:37 +0000 (22:12 +0200)
grub-core/fs/i386/pc/pxe.c

index 513a8cb7d93ecc0d6354e16dbf8c0743d23868e0..dc447d92ca8a933fc432db3085877c70696f9370 100644 (file)
@@ -121,54 +121,35 @@ grub_pxefs_open (struct grub_file *file, const char *name)
   if (!data)
     return grub_errno;
 
-#if 0
-  if (grub_strncmp (file->device->net->name, "pxe:", sizeof ("pxe:") - 1) == 0)
-    {
-      const char *ptr;
-      grub_err_t err;
-
-      ptr = name + sizeof ("pxe:") - 1;
-      err = parse_ip (ptr, &(data->server_ip), &ptr);
-      if (err)
-       return err;
-      if (*ptr == ':')
-       {
-         err = parse_ip (ptr + 1, &(data->gateway_ip), 0);
-         if (err)
-           return err;
-       }
-      else
-       data->gateway_ip = grub_pxe_default_gateway_ip;
-    }
-  else 
-#endif
-    {
-      grub_net_network_level_address_t addr;
-      grub_net_network_level_address_t gateway;
-      struct grub_net_network_level_interface *interf;
-      grub_err_t err;
-
-      if (grub_strncmp (file->device->net->name,
-                       "pxe,", sizeof ("pxe,") - 1) == 0)
-       {
-         const char *ptr;
-         
-         ptr = name + sizeof ("pxe,") - 1;
-         err = grub_net_resolve_address (name + sizeof ("pxe,") - 1, &addr);
-         if (err)
-           return err;
-       }
-      else
-       {
-         addr.ipv4 = grub_pxe_default_server_ip;
-         addr.type = GRUB_NET_NETWORK_LEVEL_PROTOCOL_IPV4;
-       }
-      err = grub_net_route_address (addr, &gateway, &interf);
-      if (err)
-       return err;
-      data->server_ip = addr.ipv4;
-      data->gateway_ip = gateway.ipv4;
-    }
+  {
+    grub_net_network_level_address_t addr;
+    grub_net_network_level_address_t gateway;
+    struct grub_net_network_level_interface *interf;
+    grub_err_t err;
+    
+    if (grub_strncmp (file->device->net->name,
+                     "pxe,", sizeof ("pxe,") - 1) == 0
+       || grub_strncmp (file->device->net->name,
+                        "pxe:", sizeof ("pxe:") - 1) == 0)
+      {
+       const char *ptr;
+       
+       ptr = name + sizeof ("pxe,") - 1;
+       err = grub_net_resolve_address (name + sizeof ("pxe,") - 1, &addr);
+       if (err)
+         return err;
+      }
+    else
+      {
+       addr.ipv4 = grub_pxe_default_server_ip;
+       addr.type = GRUB_NET_NETWORK_LEVEL_PROTOCOL_IPV4;
+      }
+    err = grub_net_route_address (addr, &gateway, &interf);
+    if (err)
+      return err;
+    data->server_ip = addr.ipv4;
+    data->gateway_ip = gateway.ipv4;
+  }
 
   if (curr_file != 0)
     {