blob: 37a61c9bc1654c329a7c0020e1283260717aa935 [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001From 7efe4676747e4e4a056b9bfb4e9424c8354e9996 Mon Sep 17 00:00:00 2001
Brad Bishop6e60e8b2018-02-01 10:27:11 -05002From: "Maxin B. John" <maxin.john@intel.com>
3Date: Wed, 21 Dec 2016 15:32:07 +0200
4Subject: [PATCH] inet[6].defn: fix inverted checks for loopback
Patrick Williamsc124f4f2015-09-15 14:41:29 -05005
6Compared to the hurd link.defn for loopback, we see these
7are inverted, meaning that you would only be able to configure
8a loopback device that was _not_ named "lo" (unlikely to exist).
9
10The result was that we'd update /run/network/ifstate for "lo"
11but never actually do anything for up/down, as shown below:
12
13root@localhost:~# ifconfig -s
Brad Bishop6e60e8b2018-02-01 10:27:11 -050014Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
15eth0 1500 0 7736329 0 2016 0 5289422 0 0 0 BMRU
16lo 65536 0 18 0 0 0 18 0 0 0 LRU
Patrick Williamsc124f4f2015-09-15 14:41:29 -050017root@localhost:~# ifdown lo
18root@localhost:~# echo $?
190
20root@localhost:~# ifconfig -s
Brad Bishop6e60e8b2018-02-01 10:27:11 -050021Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
22eth0 1500 0 7736406 0 2016 0 5289455 0 0 0 BMRU
23lo 65536 0 18 0 0 0 18 0 0 0 LRU
Patrick Williamsc124f4f2015-09-15 14:41:29 -050024root@localhost:~# ifconfig lo down
25root@localhost:~# ifconfig -s
26Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
Brad Bishop6e60e8b2018-02-01 10:27:11 -050027eth0 1500 0 7736474 0 2016 0 5289481 0 0 0 BMRU
Patrick Williamsc124f4f2015-09-15 14:41:29 -050028root@localhost:~#
29
Brad Bishop6e60e8b2018-02-01 10:27:11 -050030Also reverted the commit:
31commit 80b878497663dae08f70b4d3cffe127b57a3cfc
32which uses absolute paths to binaries called by ifup/ifdown.
33
34Upstream-Status: Inappropriate [OE specific]
35
Patrick Williamsc124f4f2015-09-15 14:41:29 -050036Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Brad Bishop6e60e8b2018-02-01 10:27:11 -050037Signed-off-by: Maxin B. John <maxin.john@intel.com>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080038Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Patrick Williamsc124f4f2015-09-15 14:41:29 -050039---
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080040 inet.defn | 140 +++++++++++++++++++++++++++++++-------------------------------
41 1 file changed, 70 insertions(+), 70 deletions(-)
Patrick Williamsc124f4f2015-09-15 14:41:29 -050042
43diff --git a/inet.defn b/inet.defn
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080044index 75e6744..23c7756 100644
Patrick Williamsc124f4f2015-09-15 14:41:29 -050045--- a/inet.defn
46+++ b/inet.defn
47@@ -6,10 +6,10 @@ method loopback
48 This method may be used to define the IPv4 loopback interface.
49
50 up
Brad Bishop6e60e8b2018-02-01 10:27:11 -050051- /bin/ip link set dev %iface% up if (!iface_is_lo())
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080052+ ip link set dev %iface% up if (!iface_is_lo())
Patrick Williamsc124f4f2015-09-15 14:41:29 -050053
54 down
Brad Bishop6e60e8b2018-02-01 10:27:11 -050055- /bin/ip link set dev %iface% down if (!iface_is_lo())
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080056+ ip link set dev %iface% down if (!iface_is_lo())
Patrick Williamsc124f4f2015-09-15 14:41:29 -050057
58 method static
59 description
Brad Bishop6e60e8b2018-02-01 10:27:11 -050060@@ -36,17 +36,17 @@ method static
61 broadcast compute_v4_broadcast
Patrick Williamsc124f4f2015-09-15 14:41:29 -050062
63 up
Brad Bishop6e60e8b2018-02-01 10:27:11 -050064- /bin/ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \
65+ ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \
66 [[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface%
67- /bin/ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up
68+ ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up
69
70- [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
71+ [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
72
73 down
74- [[ /bin/ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]]
75- /bin/ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \
76+ [[ ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]]
77+ ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \
78 [[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface%
79- /bin/ip link set dev %iface% down \
80+ ip link set dev %iface% down \
81 if (iface_is_link())
82
83 method manual
84@@ -63,12 +63,12 @@ method manual
85 hwaddress cleanup_hwaddress
86
87 up
88- [[/bin/ip link set dev %iface% mtu %mtu%]]
89- [[/bin/ip link set dev %iface% address %hwaddress%]]
90- /bin/ip link set dev %iface% up 2>/dev/null || true
91+ [[ip link set dev %iface% mtu %mtu%]]
92+ [[ip link set dev %iface% address %hwaddress%]]
93+ ip link set dev %iface% up 2>/dev/null || true
94
95 down
96- /bin/ip link set dev %iface% down 2>/dev/null || true \
97+ ip link set dev %iface% down 2>/dev/null || true \
98 if (iface_is_link() && !do_all)
99
100 method dhcp
101@@ -93,33 +93,33 @@ method dhcp
102 hwaddress cleanup_hwaddress
103
104 up
105- [[/bin/ip link set dev %iface% address %hwaddress%]]
106- /sbin/dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
107+ [[ip link set dev %iface% address %hwaddress%]]
108+ dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
109 [[-e IF_METRIC=%metric%]] \
110 if (execable("/sbin/dhclient"))
111- /sbin/pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \
112+ pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \
113 elsif (execable("/sbin/pump"))
114- /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \
115+ udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \
116 elsif (execable("/sbin/udhcpc"))
117- /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
118+ dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
119 [[-l %leasetime%]] [[-m %metric%]] %iface% \
120 elsif (execable("/sbin/dhcpcd"))
121 echo 'No DHCP client software found!' >/dev/stderr; false \
122 elsif (1)
123
124 down
125- /sbin/dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
126+ dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
127 if (execable("/sbin/dhclient"))
128- /sbin/pump -i %iface% -r \
129+ pump -i %iface% -r \
130 elsif (execable("/sbin/pump"))
131- if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \
132+ if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(cat /run/udhcpc.%iface%.pid); kill -TERM $(cat /run/udhcpc.%iface%.pid); fi \
133 elsif (execable("/sbin/udhcpc"))
134- /sbin/dhcpcd -k %iface% \
135+ dhcpcd -k %iface% \
136 elsif (execable("/sbin/dhcpcd"))
137 echo 'No DHCP client software found!' >/dev/stderr; false \
138 elsif (1)
139
140- /bin/ip link set dev %iface% down \
141+ ip link set dev %iface% down \
142 if (iface_is_link())
143
144 method bootp
145@@ -134,11 +134,11 @@ method bootp
146 whatever it really is.
147
148 up
149- /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
150+ bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
151 [[--hwaddr %hwaddr%]] --returniffail --serverbcast
152
153 down
154- /bin/ip link set dev %iface% down \
155+ ip link set dev %iface% down \
156 if (iface_is_link())
157
158 method tunnel
159@@ -158,13 +158,13 @@ method tunnel
160 ttl time -- TTL setting
161 mtu size -- MTU size
162 up
163- /bin/ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \
164+ ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \
165 [[ttl %ttl%]]
166- /bin/ip link set %iface% up [[mtu %mtu%]]
167- /bin/ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]]
168- [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
169+ ip link set %iface% up [[mtu %mtu%]]
170+ ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]]
171+ [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
172 down
173- /bin/ip tunnel del %iface%
174+ ip tunnel del %iface%
175
176 method ppp
177 description
178@@ -175,9 +175,9 @@ method ppp
179 unit number -- Use /number/ as the ppp unit number.
180 options string -- Pass /string/ as additional options to pon.
181 up
182- /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
183+ pon [[%provider%]] [[unit %unit%]] [[%options%]]
184 down
185- /usr/bin/poff [[%provider%]]
186+ poff [[%provider%]]
187
188 method wvdial
189 description
190@@ -186,10 +186,10 @@ method wvdial
191 options
192 provider name -- Use /name/ as the provider (from /etc/wvdial.conf).
193 up
194- /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
195+ start-stop-daemon --start -x /usr/bin/wvdial \
196 -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]]
197 down
198- /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
199+ start-stop-daemon --stop -x /usr/bin/wvdial \
200 -p /run/wvdial.%iface%.pid -s 2
201
202
203@@ -200,9 +200,9 @@ method ipv4ll
204 known as APIPA or IPAC, and often colloquially referred to
205 as "Zeroconf address".
206 up
207- /usr/sbin/avahi-autoipd -D %iface%
208+ avahi-autoipd -D %iface%
209 down
210- /usr/sbin/avahi-autoipd --kill %iface%
211+ avahi-autoipd --kill %iface%
212
213 architecture kfreebsd
214
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800215@@ -211,11 +211,11 @@ method loopback
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500216 This method may be used to define the IPv4 loopback interface.
217
218 up
219- /sbin/ifconfig %iface% 127.0.0.1 up \
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500220+ ifconfig %iface% 127.0.0.1 up \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800221 if (!iface_is_lo())
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500222
223 down
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500224- /sbin/ifconfig %iface% down \
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500225+ ifconfig %iface% down \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800226 if (!iface_is_lo())
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500227
228 method static
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500229@@ -238,15 +238,15 @@ method static
230 hwaddress cleanup_hwaddress
231
232 up
233- [[ /sbin/ifconfig %iface% link %hwaddress%]]
234- /sbin/ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \
235+ [[ ifconfig %iface% link %hwaddress%]]
236+ ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \
237 [[pointopoint %pointopoint%]] [[media %media%]] [[mtu %mtu%]] \
238 up
239- [[ /sbin/route add default %gateway% ]]
240+ [[ route add default %gateway% ]]
241
242 down
243- [[ /sbin/route del default %gateway% 2>&1 1>/dev/null || true ]]
244- /sbin/ifconfig %iface% down
245+ [[ route del default %gateway% 2>&1 1>/dev/null || true ]]
246+ ifconfig %iface% down
247
248 method manual
249 description
250@@ -279,30 +279,30 @@ method dhcp
251 hwaddress cleanup_hwaddress
252
253 up
254- [[/sbin/ifconfig %iface% link %hwaddress%]]
255- /sbin/dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
256+ [[ifconfig %iface% link %hwaddress%]]
257+ dhclient -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
258 [[-e IF_METRIC=%metric%]] \
259 if (execable("/sbin/dhclient"))
260- /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \
261+ udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \
262 [[-c %client%]] \
263 elsif (execable("/sbin/udhcpc"))
264- /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
265+ dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
266 [[-l %leasetime%]] %iface% \
267 elsif (execable("/sbin/dhcpcd"))
268 echo 'No DHCP client software found!' >/dev/stderr; false \
269 elsif (1)
270
271 down
272- /sbin/dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
273+ dhclient -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
274 if (execable("/sbin/dhclient"))
275- if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \
276+ if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(cat /run/udhcpc.%iface%.pid); kill -TERM $(cat /run/udhcpc.%iface%.pid); fi \
277 elsif (execable("/sbin/udhcpc"))
278- /sbin/dhcpcd -k %iface% \
279+ dhcpcd -k %iface% \
280 elsif (execable("/sbin/dhcpcd"))
281 echo 'No DHCP client software found!' >/dev/stderr; false \
282 elsif (1)
283
284- /sbin/ifconfig %iface% down
285+ ifconfig %iface% down
286
287 method bootp
288 description
289@@ -316,11 +316,11 @@ method bootp
290 whatever it really is.
291
292 up
293- /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
294+ bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
295 [[--hwaddr %hwaddr%]] --returniffail --serverbcast
296
297 down
298- /sbin/ifconfig %iface% down
299+ ifconfig %iface% down
300
301 method ppp
302 description
303@@ -331,9 +331,9 @@ method ppp
304 unit number -- Use /number/ as the ppp unit number.
305 options string -- Pass /string/ as additional options to pon.
306 up
307- /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
308+ pon [[%provider%]] [[unit %unit%]] [[%options%]]
309 down
310- /usr/bin/poff [[%provider%]]
311+ poff [[%provider%]]
312
313 method wvdial
314 description
315@@ -342,10 +342,10 @@ method wvdial
316 options
317 provider name -- Use /name/ as the provider (from /etc/wvdial.conf).
318 up
319- /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
320+ start-stop-daemon --start -x /usr/bin/wvdial \
321 -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]]
322 down
323- /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
324+ start-stop-daemon --stop -x /usr/bin/wvdial \
325 -p /run/wvdial.%iface%.pid -s 2
326
327
328@@ -356,9 +356,9 @@ method ipv4ll
329 known as APIPA or IPAC, and often colloquially referred to
330 as "Zeroconf address".
331 up
332- /usr/sbin/avahi-autoipd -D %iface%
333+ avahi-autoipd -D %iface%
334 down
335- /usr/sbin/avahi-autoipd --kill %iface%
336+ avahi-autoipd --kill %iface%
337 architecture hurd
338
339 method loopback
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500340@@ -432,23 +432,23 @@ method dhcp
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500341
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500342 up
343 [[Warning: Option hwaddress: %hwaddress% not yet supported]]
344- /sbin/dhclient -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
345+ dhclient -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
346 if (execable("/sbin/dhclient"))
347- /sbin/udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \
348+ udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \
349 [[-c %client%]] \
350 elsif (execable("/sbin/udhcpc"))
351- /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
352+ dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
353 [[-l %leasetime%]] %iface% \
354 elsif (execable("/sbin/dhcpcd"))
355 echo 'No DHCP client software found!' >/dev/stderr; false \
356 elsif (1)
357
358 down
359- /sbin/dhclient -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
360+ dhclient -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
361 if (execable("/sbin/dhclient"))
362- if test -f /run/udhcpc.%iface///.%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface///.%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface///.%.pid); fi \
363+ if test -f /run/udhcpc.%iface///.%.pid; then kill -USR2 $(cat /run/udhcpc.%iface///.%.pid); kill -TERM $(cat /run/udhcpc.%iface///.%.pid); fi \
364 elsif (execable("/sbin/udhcpc"))
365- /sbin/dhcpcd -k %iface% \
366+ dhcpcd -k %iface% \
367 elsif (execable("/sbin/dhcpcd"))
368 echo 'No DHCP client software found!' >/dev/stderr; false \
369 elsif (1)
370@@ -482,9 +482,9 @@ method ppp
371 unit number -- Use /number/ as the ppp unit number.
372 options string -- Pass /string/ as additional options to pon.
373 up
374- /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
375+ pon [[%provider%]] [[unit %unit%]] [[%options%]]
376 down
377- /usr/bin/poff [[%provider%]]
378+ poff [[%provider%]]
379
380 method wvdial
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500381 description
Brad Bishop6e60e8b2018-02-01 10:27:11 -0500382@@ -493,10 +493,10 @@ method wvdial
383 options
384 provider name -- Use /name/ as the provider (from /etc/wvdial.conf).
385 up
386- /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
387+ start-stop-daemon --start -x /usr/bin/wvdial \
388 -p /run/wvdial.%iface///.%.pid -b -m -- [[ %provider% ]]
389 down
390- /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
391+ start-stop-daemon --stop -x /usr/bin/wvdial \
392 -p /run/wvdial.%iface///.%.pid -s 2
393
394
395@@ -507,6 +507,6 @@ method ipv4ll
396 known as APIPA or IPAC, and often colloquially referred to
397 as "Zeroconf address".
398 up
399- /usr/sbin/avahi-autoipd -D %iface%
400+ avahi-autoipd -D %iface%
401 down
402- /usr/sbin/avahi-autoipd --kill %iface%
403+ avahi-autoipd --kill %iface%
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500404--
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08004052.7.4
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500406