modpib(1)                                    Qualcomm Atheros Open Powerline Toolkit                                   modpib(1)

NAME
       modpib - Qualcomm Atheros PIB File Editor

SYNOPSIS
       modpib [options] filename

DESCRIPTION
       Change  device  identity  parameters in a PIB file and update the checksum.  Device identity parameters are the MAC, DAK,
       NMK and the Manufacturer, Network and User HFID.  Collectively, they establish the device network identity.

       This program is the safe way to edit identity parameters since only valid PIB files can be edited and only selected  val‐
       ues changed.  In addition, critical cross-parameter updates are automatically applied.

       This  program  is  part of the Qualcomm Atheros Powerline Toolkit.  See the AMP man page for an overview and installation
       instructions.

OPTIONS
       -C mode
              Set Central Coordinator Selection mode.  Permitted values for mode are 0=Auto, 1=Never,  2=Always,  3=UserAssigned
              and 4=Covert.

       -D xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
              The  new Device Access Key (DAK).  This key will replace the original DAK.  Keys are 16 hex octet strings.  Octets
              may be seperated by optional colons.  The symbol none, key1 or key2 may be specified in  place  of  a  hexadecimal
              string, for convenience.  Use program hpavkey to compute the DAK for a specific password, if required.

       -L level
              Set  security  level.   The  security level is written into the PreferredNID.  Level 0 enables pushbutton pairing.
              Level 1 disables it.  The default secutity level is 0.

       -M xx:xx:xx:xx:xx:xx
              The new Media Access Control (MAC) address.  This  address  will  replace  the  original  address,  if  specified.
              Addresses  are  6  hex  octet  strings.   Octets  may be seperated by optional colons.  Qualcomm Atheros powerline
              devices derive their MAC address from their PIB and each device on a network  must  have  a  unique  address.   To
              facilitate  the  assignement  of  unique  addresses, substituting the word "auto", "next" or "plus" will cause the
              original MAC address to be incremented before a new checksum is calculated.  Successive uses of this  option  will
              continue to increment the stored address.  You can inspect the stored MAC address with "chkpib -v pibfile".

       -N xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
              The new Network Membership Key (NMK).  This key will replace the original NMK, create a new PreferredNID and clear
              the AVLNMembership bit.  Keys are 16 hex octets.  Optionally, octets may be seperated colons.  The symbol key1  or
              key2  can  be specified in place of a hexadecimal string, for convenience.  Use program hpavkey to compute the NMK
              from a specific password, if required.

       -P filename
              The specified file is loaded from disk and written into the prescaler section of the PIB.  This file  must  be  in
              the format used by the Qualcomm Atheros Windows Device Manager, which is a two column file, each column consisting
              of 8 ASCII alpha-numeric characters.  The first column corresponds to the  array  index  value  (00000000  through
              00001155,  decimal),  and  the second column is the value stored at that position in the prescaler array (00000000
              through 000000ff, hexadecimal).  The two columns may be separated by any whitespace  characters  when  using  this
              tool.  However, for full compatibility with the Windows Device Manager it is advised to use a single space between
              the columns.  The '#' character may also be used at the start of a line to denote a comment.

       -S string
              The new manufacturing string.  The maximum length is 63 characters.

       -T string
              The new network name string.  The maximum length is 63 character.

       -U string
              The new username string.  The maximum length is 63 characters.

       -q     Enable quiet mode.  This option has no effect at present.

       -v     Print PIB identity parameters on stdout after changes have been applied.  This option helps  verify  that  changes
              have been applied correctly.  It can also be used, without changes, to merely inspect existing parameters.

       -?,--help
              Print program help summary on stdout.  This option takes precedence over other options on the command line.

       -!,--version
              Print program version information on stdout.  This option takes precedence over other options on the command line.
              Use this option when sending screen dumps to Qualcomm Atheros Technical Support so that they  know  exactly  which
              version of the Linux Toolkit you are using.

ARGUMENTS
       filename
              The  name  of  the PIB file to be modified.  No assumptions are made based on filename and no filename conventions
              are enforced.

KEYS
       Encryption keys are long, tedious to type and prone to error.  For convenience, symbolic names may be used to specify the
       key for options -D and -N.  Symbolic name "none" translates to zeros.  Symbolic name "key1" translates to the HomePlug AV
       compliant key for pass phrase "HomePlugAV".  Symbolic name "key2" translates to the HomePlug AV compliant  key  for  pass
       phrase "HomePlugAV0123".  The actual key that is generated for key1 or key2 will differ depending on context.

EXAMPLES
       The  following example replaces the MAC address in pib file abc.pib and computes a new checksum.  The input file is over-
       written.  A command like this one can be used to establish the start MAC address when downloading a series of PIBs.

          # modpib -M 00:b0:52:DA:DA:FF abc.pib

       The following example increments the MAC address in pib file abc.pib and computes a new checksum.  The word auto, next or
       plus,  in  place of a MAC address, will increment the old address each time the command is executed.  This command can be
       used to ensure that unique and consecutive MAC addresses are used each time a PIB is downloaded.

          # modpib -M auto abc.pib

       The following command updates pib file abc.pib with the DAK and NMK read from the device connected to eth0.   In  similar
       fashion, program rkey can be used to compute random key values from a keyfile.

          # modpib -D $(int6kid -Di eth0) -N $(rkey secret.key -M) abc.pib

       The  following  example  displays  the  current value of keys and strings stored in pib file abc.pib because option -v is
       present.  This can be used to verify PIB identity settings before or after an edit.

          # modpib -v abc.pib
                  PIB 4-4 15560 bytes
                  MAC 00:B0:52:00:00:01
                  DAK 68:9F:07:4B:8B:02:75:A2:71:0B:0B:57:79:AD:16:30 (HomePlugAV)
                  NMK 50:D3:E4:93:3F:85:5B:70:40:78:4D:F8:15:AA:8D:B7 (HomePlugAV)
                  NID B0:F2:E6:95:66:6B:03
                  NET Qualcomm Atheros Enabled Network
                  MFG Qualcomm Atheros HomePlug AV Device
                  USR Qualcomm Atheros Enabled Product
                  CCo Auto
                  MDU N/A

DISCLAIMER
       PIB file structure and content is proprietary to Qualcomm Atheros, Ocala FL USA.  Consequently, public information is not
       available.  Qualcomm Atheros reserves the right to modify PIB file structure or content in future firmware releases with‐
       out any obligation to notify or compensate users of this program.

SEE ALSO
       chkpib(7), chkpib2(7), getpib(7), modpib(1), pib2xml(1), pibcomp(1), pibdump(1), setpib(1), xml2pib(1)

CREDITS
        Nathaniel Houghton <nhoughto@qca.qualcomm.com>
        Charles Maier <cmaier@qca.qualcomm.com>

open-plc-utils-0.0.3                                        Mar 2014                                                   modpib(1)