Fix unused warning
[oweals/nmrpflash.git] / README.md
index c60fa70cfd2dcfeed2082355510764f24f95ba80..1ce6dd3bac6423bc18d849c924e185bba91afd17 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,13 +1,12 @@
 nmrpflash - Netgear Unbrick Utility
 ====================================
 
-This program uses Netgear's [NMRP protocol]
-(http://www.chubb.wattle.id.au/PeterChubb/nmrp.html)
-to flash a new firmware image to a compatible device. This utility has been
-successfully used on a Netgear EX2700 and DNG3700v2, but is likely to work
+`nmrpflash` uses Netgear's [NMRP protocol](http://www.chubb.wattle.id.au/PeterChubb/nmrp.html)
+to flash a new firmware image to a compatible device. It has been
+successfully used on a Netgear EX2700, DNG3700v2 and R6220, but is likely to work
 with many other Netgear routers as well.
 
-Prebuilt binaries for Linux, OS X and Windows are available
+Prebuilt binaries for Linux, ~OS X~ macOS and Windows are available
 [here](https://github.com/jclehner/nmrpflash/releases)
 ([WinPcap](https://www.winpcap.org/install/default.htm) is required on Windows).
 
@@ -47,9 +46,8 @@ eth0      192.168.1.2  f2:11:a1:02:03:b1
 ```
 
 Once you've determined the interface to use, we can flash the image. Firmware
-images can usually be downloaded directly from Netgear. For details on how to
-do this, see [here](#obtaining-firmware-images). Power on your device immediately
-after starting `nmrpflash`.
+images can usually be downloaded directly from Netgear. Power on your device
+immediately after starting `nmrpflash`.
 
 ```
 # nmrpflash -i eth0 -f EX2700-V1.0.1.8.img
@@ -69,11 +67,10 @@ In any case, run `nmrpflash` with `-vvv` before filing a bug report. Also,
 try connecting your Netgear router *directly* to the computer running
 `nmrpflash`.
 
-###### "Error while loading shared libraries: libpcap.so.0.8" (Linux)
+###### "Error while loading shared libraries: ..." (Linux)
 
-You must install your Linux distribution's `libpcap` package. In
-openSUSE or Ubuntu for example, install `libpcap0.8`. Other distros
-will have a similarily named package.
+You must install your Linux distribution's `libpcap` and `libnl-3`
+packages (exact names will vary depending on your distribution).
 
 ###### "The program can't start because wpcap.dll is missing" (Windows)
 
@@ -96,7 +93,7 @@ The router did not respond. Try rebooting the device and run `nmrpflash` again.
 You could also try running `nmrpflash` with `-m` and specify your router's
 MAC address. It's also possible that your device does not support the NMRP protocol.
 
-###### "Timeout while waiting for initial reply."
+###### "Timeout while waiting for ACK(0)/OACK."
 
 The device did not respond to `nmrpflash`'s TFTP upload request. By default,
 `nmrpflash` will assign `10.164.183.252` to the target device, while adding `10.164.183.253`
@@ -108,7 +105,10 @@ network interface.
 This error message could also indicate a bug in the TFTP code; try using an external tftp
 client (busybox in this example), by specifying the `-c` flag instead of the `-f` flag:
 
-`# nmrpflash -i eth0 -c "busybox tftp -p -l EX2700-V1.0.1.8.img \$IP"`
+`# nmrpflash -i eth0 -c 'busybox tftp -p -l EX2700-V1.0.1.8.img $IP'`
+
+The environment variable `IP` is set by `nmrpflash` (other environment variables
+are: `MAC`, `PORT`, `NETMASK`).
 
 ###### "Timeout while waiting for CLOSE_REQ."
 
@@ -157,21 +157,5 @@ project file (`nmrpflash.dev`). Download the latest
 [WinPcap Developer Pack](https://www.winpcap.org/devel.htm)
 and extract it into the root folder of the nmrpflash sources.
 
-### Obtaining firmware images
-
-Firmware images can be downloaded directly from Netgear's FTP servers. 
-For the Netgear EX2700 for example, download 
-ftp://updates1.netgear.com/ex2700/ww/fileinfo.txt. At the top there 
-should be an entry like this:
-
-```
-[Major1]
-file=EX2700-V1.0.1.8.img
-...
-```
 
-The download link for the latest firmware image for this device is thus:
-ftp://updates1.netgear.com/ex2700/ww/EX2700-V1.0.1.8.img. Substitute 
-`ex2700` for your device (`wndr4300`, `wndr3700`, `r6100`, etc.). If
-neccessary, substitute `ww` (world-wide) for a specific region.