summaryrefslogtreecommitdiff
blob: 88a5edd92cdc7eb88f62b61971b77d14c5450d43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
The original objective seems to have been to apply padding, but this
is not done at all: instead, set a precision. -JeR

--- a/src/shape_arp_hdr.c
+++ b/src/shape_arp_hdr.c
@@ -94,7 +94,7 @@
     if(format_ethernet_addr(ahdr_o.s_eaddr, s_neaddr) == 0)
         fatal_error("Invalid sender ethernet address");
 
-    snprintf(ahdr_o.shw_addr, 18, "%0X:%0X:%0X:%0X:%0X:%0X",
+    snprintf(ahdr_o.shw_addr, 18, "%.2X:%.2X:%.2X:%.2X:%.2X:%.2X",
         s_neaddr[0], s_neaddr[1], s_neaddr[2], s_neaddr[3], s_neaddr[4], s_neaddr[5]);
 
     if(ahdr_o.r_paddr == NULL)
@@ -139,7 +139,7 @@
     if(format_ethernet_addr(ahdr_o.r_eaddr, r_neaddr) == 0)
         fatal_error("Invalid receiver ethernet address");
 
-    snprintf(ahdr_o.rhw_addr, 18, "%0X:%0X:%0X:%0X:%0X:%0X",
+    snprintf(ahdr_o.rhw_addr, 18, "%.2X:%.2X:%.2X:%.2X:%.2X:%.2X",
         r_neaddr[0], r_neaddr[1], r_neaddr[2], r_neaddr[3], r_neaddr[4], r_neaddr[5]);
 
     if(libnet_build_arp(
--- a/src/shape_ethernet_hdr.c
+++ b/src/shape_ethernet_hdr.c
@@ -56,7 +56,7 @@
         if(format_ethernet_addr(ehdr_o.s_addr, us_addr) == 0)
             fatal_error("Invalid source ethernet address");
     
-    snprintf(ehdr_o.shw_addr, 18, "%0X:%0X:%0X:%0X:%0X:%0X",
+    snprintf(ehdr_o.shw_addr, 18, "%.2X:%.2X:%.2X:%.2X:%.2X:%.2X",
         us_addr[0], us_addr[1], us_addr[2], us_addr[3], us_addr[4], us_addr[5]);
 
     if(ehdr_o.d_addr == NULL && injection_type == ETHERTYPE_ARP)
@@ -71,7 +71,7 @@
     if(format_ethernet_addr(ehdr_o.d_addr, ud_addr) == 0)
         fatal_error("Invalid destination ethernet address");
 
-    snprintf(ehdr_o.dhw_addr, 18, "%0X:%0X:%0X:%0X:%0X:%0X",
+    snprintf(ehdr_o.dhw_addr, 18, "%.2X:%.2X:%.2X:%.2X:%.2X:%.2X",
         ud_addr[0], ud_addr[1], ud_addr[2], ud_addr[3], ud_addr[4], ud_addr[5]);
 
     if(libnet_build_ethernet(