Provided by: dns323-firmware-tools_0.7.3-1_all bug


       mkdns323fw - build firmware images for the DNS-323 from a kernel and initrd


       mkdns323fw  -k  KERNEL  -i  INITRD [-d DEFAULTS] -p PRODUCT_ID -c CUSTOM_ID -m MODEL_ID -o


       mkdns323fw creates firmware images suitable for upload to the D-link  DNS-323  and  other,
       similar devices based on the same basic firmware image, such as the Conceptronics CH3SNAS.
       These firmware images contain a kernel and initrd, as  well  as  various  product-specific
       values and checksums.

       This  command  can  be  very  dangerous;  although it attempts to do some very, very basic
       sanity checking, it is still quite easy to generate a firmware file that, when loaded into
       your  device,  will  kill  it  stone  dead.  This program is not able to check that you're
       uploading valid data to your device; if you brick it, you're on your own.

       -k kernel, --kernel=kernel

              specify the file containing the kernel image to embed in the firmware image.   This
              must  be  a uBoot image file, as produced by mkimage(1) with appropriate options to
              specify it as a kernel image.  Attempts to provide  a  non-uBoot  file  will  fail,
              while  specifying  a non-kernel uBoot file may well brick your device.  This option
              is required.

       -i initrd, --initrd=initrd

              the initrd file to embed in the firmware image.  This must be a uBoot  image  file,
              as produced by mkimage(1) with appropriate options to specify it as a ramdisk.  The
              tool will refuse to embed a non-uBoot file, however a  dodgy  ramdisk  will  likely
              brick your device.

       -d defaults.tar.gz, --defaults=defaults.tar.gz

              The   firmware   format  has  the  ability  to  embed  a  tarball  with  a  default
              configuration; if you want to do this, you may use this option to do so.   However,
              the devices that the author has dealt with do not require such a thing, and leaving
              it out still produces a valid firmware (and one that is a bit smaller, to boot).

       -s signature, --defaults=signature

              For reasons that will probably remain unknown until the ends of time, there are (at
              least)  two  different  firmware  signatures  running  around  that  are  otherwise
              identical in their internal structure, which are used for different devices.   This
              option  exists  to  allow you to specify the signature that you want to use in your
              firmware build.  Valid values for this option are currently FrodoII  ®(the  default
              if  this  option  is  not  specified),  Chopper  ®or Gandolf ®which is used in some
              devices.  See the table at the top of the script if you don't know which  value  to
              use for your device.

       --p product_id, --product-id=product_id

       --c custom_id, --custom-id=custom_id

       --m model_id, --model-id=model_id

              Specify the product, custom, and model ID that this firmware image is intended for.
              As several different devices share the same firmware format,  the  intended  device
              type  is encoded in these fields.  If you do not specify the correct values for the
              device that you are targetting with your firmware, it  is  quite  likely  that  the
              device will refuse the upload.

              Known-good  values  for  various  devices are provided in the header of the script;
              please look there for more information.  You can also obtain the values you need by
              downloading  an  existing firmware for the device you're targetting and doing a bit
              of digging.

       -o outputfile, --output=outputfile

              Where to write the completed firmware image.  Will overwrite any existing  file  of
              the same name.


       E-mail  bug reports to  I don't guarantee to be
       able to help, but I'll give it a shot.  Patches are far more helpful.


       mkdns323fw was  written  by  Matt  Palmer,  based  on  reverse-engineering  work  done  by
       Leschinsky Oleg.


       Copyright © 2008 Matt Palmer.
       This  is  free software; see the source for copying conditions.  There is NO warranty; not
       even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, to the extent  permitted  by


       mkimage(1), splitdns323fw(1).