logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

plcset - Qualcomm Atheros PLC Set Property

Arguments

device The MAC address of some powerline device.  More than one address may be specified.  If  more  than
              one  address  is  specified  then  operations  are  performed on each device in turn.  The default
              address is local.  See DEVICES for information about symbolic device addresses.

Credits

        Charles Maier

open-plc-utils-0.0.3                              November 2013                                        plcset(1)

Description

       Set  a specific property value on an Qualcomm Atheros powerline device using the VS_SET_PROPERTY message.
       Properties are specified using their numeric property identifier.   Property  names  are  not  supported.
       Property values are entered using type and data pairs.  Users familiar with program setpib should already
       understand this method of entering data values.

       Only selected properties can be set using this message type.  See the Qualcomm Atheros FirmwareTechnicalReferenceManual for supported property identifiers, versions, values and data formats.

       This program is part of the Qualcomm Atheros Powerline Toolkit.

Devices

       Powerline  devices  use  Ethernet  Media Access Control (MAC) addresses.  A MAC address is a 48-bit value
       entered as 12 hexadecimal digits in upper, lower or mixed character case.  Octets may be  separated  with
       colons  for  clarity.  For example, "00b052000001", "00:b0:52:00:00:01" and "00b052:000001" are valid and
       equivalent.

       The following MAC addresses are special and may be entered by name instead of number.

       all    Same as "broadcast".

       broadcast
              A synonym for the Ethernet broadcast address,  FF:FF:FF:FF:FF:FF.   All  devices,  whether  local,
              remote  or  foreign recognize messages sent to this address.  A remote device is any device at the
              far end of a powerline connection.  A foreign device is any device not manufactured by Atheros.

       local  A  synonym  for  the  Qualcomm  Atheros  vendor   specific   Local   Management   Address   (LMA),
              00:B0:52:00:00:01.   All  local  Atheros  devices  recognize  this  address but remote and foreign
              devices do not.  A remote device is any device at the  far  end  of  a  powerline  connection.   A
              foreign device is any device not manufactured by Atheros.

Disclaimer

       Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary  to  Qualcomm
       Atheros, Ocala FL USA.  Consequently, public information may not be available.  Qualcomm Atheros reserves
       the  right  to modify message structure and content in future firmware releases without any obligation to
       notify or compensate users of this program.

Examples

       The following example sets the "time-to-live" property for each channel access priority type: CAP0, CAP1,
       CAP2, CAP3 and MME.  The property identifier is 101.  It needs five  32-bit  decimal  integer  values  in
       microseconds.   Data  type  long specifies a 32-bit decimal value that will be converted to little endian
       format on output.

          # plcset -n 101 long 100 long 200 long 250 long 300 long 100

       The next example set the User HFID.  The first occurance of option -n specifies the property by number as
       105.  The second occurance specifies the property version as 1.  This is merely  an  example  of  how  to
       specify the propery version.  At the time of writing, property 105 is still version 0.

          # plcset -n 105 -n 1 hfid "Intergalactic Software Pirates"

Formats

       Each property is assigned one or more values.  Each value may  have  a  different  type  and  size.   The
       expected  type, size and order of property values is described in the FirmwareTechnicalReferenceManual
       under the VS_SET_PROPERTY message description.  Expected data types and values must  be  entered  on  the
       command  line  in the order specified in the manual and must appear on the command line before any device
       addresses appear.

       byteinteger
              An unsigned integer stored as 8 bits or 1 byte.  The value is expressed in decimal by default.   A
              binary  value  may be expressed with a 0b prefix.  A hexadecimal value may be expressed using a 0x
              prefix.  The offset increments by 1 prior to the next insertion.

       wordinteger
              An unsigned integer stored as 16 bits or 2 bytes.  The value is expressed in decimal  by  default.
              A binary value may be expressed with a 0b prefix.  A hexadecimal value may be expressed using a 0x
              prefix.  The result will be sent in little endian byte order.  The offset increments by 2 prior to
              the next insertion.

       longinteger
              An  unsigned  integer stored as 32 bits or 4 bytes.  The value is expressed in decimal by default.
              A binary value may be expressed with a 0b prefix.  A hexadecimal value may be expressed using a 0x
              prefix.  The result will be sent in little endian byte order.  The offset increments by 4 prior to
              the next insertions.

       hugeinteger
              An unsigned integer stored as 64 bits or 8 bytes.  The value is expressed in decimal  by  default.
              A binary value may be expressed with a 0b prefix.  A hexadecimal value may be expressed using a 0x
              prefix.   The  offset  increments  by  8  prior to the next insertion.  The result will be sent in
              little endian byte order.  This type is only available on hosts that support 64 bit data values.

       datahex
              A sequence of hexadecimal octets.  Octets may be separated by a colon for clarity.  The number  of
              octets  determines the number of bytes written.  The result is sent in the byte order specified on
              the command line.  The offset increments by the number of bytes written.  This is similar to "key"
              and "mac" below but accepts variable length input.

       keyhex
              A sequence of hexadecimal octets.  Octets may be separated by a colon for clarity.  The number  of
              octets  must  convert  to  16  bytes or an error will occur.  The result is sent in the byte order
              specified on the command line.  The offset increments by 16 prior to the next insertion.  This  is
              similar  "data" above but accepts ony fixed length input.  This option may be used to set the DAK,
              NMK or NVAK values.

       machex
              A sequence of hexadecimal octets.  Octets may be separated by a colon for clarity.  The number  of
              octets  must  convert  to  6  bytes  or an error will occur.  The result is sent in the byte order
              specified on the command line.  The offset increments by 6 prior to the next insertion.   This  is
              similar "data" above but accepts only fixed length input.  This option may be used to set the DAK,
              NMK or NVAK values.

       hfidstring
              An  ASCII character string.  The string is always stored as 64 bytes.  Short strings are padded on
              the right with NUL characters.  Long strings are truncated on the  right  and  the  last  byte  is
              forced  to NUL.  The offset increments by 64 prior to the next insertion.  This option may be used
              to enter user, network and  manufacturer identification strings.

       zerocount
              An unsigned integer representing the number of consecutive bytes to fill with  0x00.   The  offset
              increments by the number of bytes written.  This option may be used to erase regions of the PIB.

       fillcount
              An  unsigned  integer  representing the number of consecutive bytes to fill with 0xFF.  The offset
              increments by the number of bytes written.  This option may be used to erase regions of the PIB.

       skipcount
              An unsigned integer indicating the number of bytes to skip over  before  staring  another  change.
              Intervening data data locations are unchanged.

Name

       plcset - Qualcomm Atheros PLC Set Property

Options

       -e     Redirects  stderr  messages  to  stdout.   By  convention status and error messages are printed on
              stderr while primary program output is printed on stdout.  This option prints all output on stdout
              in cases where this is desired.

       -nnumber
              The property identifier or peoperty version.  Property identifiers and  versions  are  entered  as
              32-bit  decimal  integers.   Property names are not supported.  The default is 0.  This option may
              appear more than once on the command line.  The first occurance specifies the property identifier.
              The second occurances specifies the property version.  See the FirmwareTechnicalReferenceManual
              for an list of valid property identifiers and versions.

       -iinterface
              Select the host Ethernet interface.  All requests are sent via this interface  and  only  reponses
              received via this interface are recognized.  The default interface is eth1 because most people use
              eth0  as  their principle network connection; however, if environment string "PLC" is defined then
              it takes precedence over the default interface.  This option then  takes  precedence  over  either
              default.

       -ooption
              The  update  option  (or  method)  expressed  as an 8-bit hexadecimal integer.  The prefix "0x" is
              optional.  Option values are constructed from the logical OR of  0x01=ApplyNow,  0x02=Persist  and
              0x04=Reset.  The only legal option values are 0x01, 0x02, 0x03 and 0x06.

       -q     Suppresses status messages on stderr.

       -v     Prints  additional  information  on  stdout.   In  particular, this option dumps outgoing Ethernet
              packets on stdout.

       -?,--help
              Displays program help information on stderr.  This option takes precedence over all other  options
              on the command line except version information.

       -!,--version
              Displays  program  version  information  on  stderr.   This option takes precedence over all other
              options on the command line except help information.  Use this option when sending screen dumps to
              Atheros technical staff.

References

       See  the  Qualcomm  Atheros HomePlug AV Firmware Technical Reference Manual for the latest information on
       available properties.

See Also

plc(1), getpib(1), modpib(1), plcset(1), setpib(1)

Synopsis

plcset [options] [typedata] [typedata] [device] [device] [...]

Tr69 Data Types

       These data types are not currently recognized by the runtime firmware and so errors will certainly result
       if they are used.

       accesspasswordstring
              An ASCII character string.  The string is always stored as 257 bytes.  Short strings are padded on
              the  right  with  NUL  characters.   Long  strings are truncated on the right and the last byte is
              forced to NUL.  The offset increments by 257 prior to the next insertion.

       accessusernamestring
              An ASCII character string.  The string is always stored as 33 bytes.  Short strings are padded  on
              the  right  with  NUL  characters.   Long  strings are truncated on the right and the last byte is
              forced to NUL.  The offset increments by 33 prior to the next insertion.

       adminpasswordstring
              An ASCII character string.  The string is always stored as 33 bytes.  Short strings are padded  on
              the  right  with  NUL  characters.   Long  strings are truncated on the right and the last byte is
              forced to NUL.  The offset increments by 33 prior to the next insertion.

       adminusernamestring
              An ASCII character string.  The string is always stored as 33 bytes.  Short strings are padded  on
              the  right  with  NUL  characters.   Long  strings are truncated on the right and the last byte is
              forced to NUL.  The offset increments by 33 prior to the next insertion.

       passwordstring
              An ASCII character string.  The string is always stored as 257 bytes.  Short strings are padded on
              the right with NUL characters.  Long strings are truncated on the  right  and  the  last  byte  is
              forced to NUL.  The offset increments by 257 prior to the next insertion.

       urlstring
              An ASCII character string.  The string is always stored as 257 bytes.  Short strings are padded on
              the  right  with  NUL  characters.   Long  strings are truncated on the right and the last byte is
              forced to NUL.  The offset increments by 257 prior to the next insertion.

       usernamestring
              An ASCII character string.  The string is always stored as 257 bytes.  Short strings are padded on
              the right with NUL characters.  Long strings are truncated on the  right  and  the  last  byte  is
              forced to NUL.  The offset increments by 257 prior to the next insertion.

See Also