=============================================================================
                   NEC iLO Account Registration Tool
                                                                         [LF]
=============================================================================
[Target Server] Express5800 Server Series (iLO Models)
[Target User] Users who use iLO host authentication.
[Target OS]
  - Red Hat Enterprise Linux 8.8 or later
     +- openssl-libs-1.1.1k-9.el8_7.x86_64 or later
  - Red Hat Enterprise Linux 9.2 or later
     +- openssl-libs-3.0.7-6.el9_2.x86_64 or later
  * Use the features provided by the openssl-libs package included with 
    Red Hat Enterprise Linux installation media.
    Installed with minimal OS configuration, so no installation is required.
[Target Products]
  - NEC ESMPRO ServerAgentService
  - RAID Report Service
  - Product Info Collection Utility
=============================================================================
-----------------------------------------------------------------------------
Contents
  1.Description
  2.Usage
  3.Operation Check
  4.Version / Revision History
  a.Appendix
  a-1.Message list
  a-2.ASCII code list
-----------------------------------------------------------------------------


1.Description

  When iLO Host Authentication is enabled on iLO models, target products 
  that acquires data from iLO will not be able to access the iLO.
  The tool informs target products of iLO account information 
  (login user name, password).
  The purpose of this tool is to make target products accessible to iLO.


2.Usage

  The user name must be 1 to 39 characters long.

  The password must be 0 (no password) to 39 characters long.
  When not using password, use "".

  The character must use alphabet, digit or special character from 0x20 to 0x7e 
  in the ASCII code.
  The special character must use \ before.
    Example in an under bar : abC\_xYZ

  < iLO account is registered. >
    1) Log in to the system as the root user.
    2) Execute the following command.
         # ./iLOUserSet -u username -p password
       See the message for the results of the execution.

  < iLO account is deleted. >
    1) Log in to the system as the root user.
    2) Execute the following command.
         # ./iLOUserSet -d
       See the message for the results of the execution.

  You can avoid saving user names and passwords in the command history 
  with scripts that use read commands such as the following:
  -----
  #!/bin/bash
  #
  USERNAME=""
  PASSWORD=""

  read -p "Enter user name : " USERNAME
  read -s -p "Enter password : " PASSWORD
  ./iLOUserSet -u ${USERNAME} -p ${PASSWORD}
  -----


3.Operation Check

  Make sure that the target products are working correctly.
  If a problem occurs, an event with the following message will be output to 
  the syslog.
  If an event is outputted, please re-register your iLO account.

      Login to iLO was failed. Please input an account of iLO 
      using "NEC iLO account registration tool".


4.Version / Revision History

  [Version] 1.00

  [Revision History]
   2024/08/30 Ver.1.00
     - Create New.


a.Appendix
a-1.Message list
  ------------------------------------------------------------------------------
  Retur   Type    Message
  value           --------------------------------------------------------------
                  Description
  ------------------------------------------------------------------------------
    0     OK      iLOUserSet: account data registered successfully.
  ------------------------------------------------------------------------------
    0     OK      iLOUserSet: account data deleted successfully.
  ------------------------------------------------------------------------------
    1     INFO    Usage:
                  iLOUserSet -u username -p password
                  iLOUserSet -d
                  --------------------------------------------------------------
                  Input user name and password.
  ------------------------------------------------------------------------------
    1     INFO    iLOUserSet: input username is none.
                  --------------------------------------------------------------
                  The user name must be 1 to 39 characters long.
  ------------------------------------------------------------------------------
    1     INFO    iLOUserSet: input username is too long.
                  --------------------------------------------------------------
                  The user name must be 1 to 39 characters long.
  ------------------------------------------------------------------------------
    1     INFO    iLOUserSet: input password is too long.
                  --------------------------------------------------------------
                  The password must be 0 (no password) to 39 characters long.
  ------------------------------------------------------------------------------
    1     INFO    iLOUserSet: invalid option. {error infomation}.
                  --------------------------------------------------------------
                  Please check the designated option.
                  When designating a special character as a user name or a 
                  password, please input \ before a special character.
                    Examplewhich designates an under bar : abC\_xYZ
                  When not designating a password, please input with "".
  ------------------------------------------------------------------------------
    1     INFO    iLOUserSet: invalid option.
                  Usage:
                  iLOUserSet -u username -p password
                  iLOUserSet -d
                  --------------------------------------------------------------
                  Please check the designated option.
                  When designating a special character as a user name or a 
                  password, please input \ before a special character.
                    Examplewhich designates an under bar : abC\_xYZ
                  When not designating a password, please input with "".
  ------------------------------------------------------------------------------
    2     INFO    iLOUserSet: need root privileges.
                  --------------------------------------------------------------
                  Please execute by the root user.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to get LANG environment variable.
                  --------------------------------------------------------------
                  Please set LANG environment variable of a console as UTF-8 
                  and execute again.
                    # export LANG=ja_JP.UTF-8
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to convert of UTF-8. {error infomation}.
                  --------------------------------------------------------------
                  Please set LANG environment variable of a console as UTF-8 
                  and execute again.
                    # export LANG=ja_JP.UTF-8
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to load {error infomation}
                  --------------------------------------------------------------
                  Please confirm whether openssl-libs package is installed.
                    # rpm -qa | grep openssl-libs
                  - If openssl-libs package is not installed, 
                    install openssl-libs package.
                  - If openssl-libs package is installed, 
                    there was some error in loading process.
                    Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to initialize. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to encryption. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to update username.
                  iLOUserSet: failed to open username for reading. {error infomation}.
                  iLOUserSet: failed to change permission mode of username. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to delete username. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to update password.
                  iLOUserSet: failed to open password for reading. {error infomation}.
                  iLOUserSet: failed to change permission mode of password. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------
    3     ERROR   iLOUserSet: failed to delete password. {error infomation}.
                  --------------------------------------------------------------
                  Please execute again later.
  ------------------------------------------------------------------------------

a-2.ASCII code list
  --------------------------------------
  input       character   ASCII code
  --------------------------------------
  \(space)    (space)     0x20
  \!          !           0x21
  \"          "           0x22
  \#          #           0x23
  \$          $           0x24
  \%          %           0x25
  \&          &           0x26
  \'          '           0x27
  \(          (           0x28
  \)          )           0x29
  \*          *           0x2A
  \+          +           0x2B
  \,          ,           0x2C
  \-          -           0x2D
  \.          .           0x2E
  \/          /           0x2F
  0           0           0x30
  1           1           0x31
  2           2           0x32
  3           3           0x33
  4           4           0x34
  5           5           0x35
  6           6           0x36
  7           7           0x37
  8           8           0x38
  9           9           0x39
  \:          :           0x3A
  \;          ;           0x3B
  \<          <           0x3C
  \=          =           0x3D
  \>          >           0x3E
  \?          ?           0x3F
  \@          @           0x40
  A           A           0x41
  B           B           0x42
  C           C           0x43
  D           D           0x44
  E           E           0x45
  F           F           0x46
  G           G           0x47
  H           H           0x48
  I           I           0x49
  J           J           0x4A
  K           K           0x4B
  L           L           0x4C
  M           M           0x4D
  N           N           0x4E
  O           O           0x4F
  P           P           0x50
  Q           Q           0x51
  R           R           0x52
  S           S           0x53
  T           T           0x54
  U           U           0x55
  V           V           0x56
  W           W           0x57
  X           X           0x58
  Y           Y           0x59
  Z           Z           0x5A
  \[          [           0x5B
  \\          \           0x5C
  \]          ]           0x5D
  \^          ^           0x5E
  \_          _           0x5F
  \`          `           0x60
  a           a           0x61
  b           b           0x62
  c           c           0x63
  d           d           0x64
  e           e           0x65
  f           f           0x66
  g           g           0x67
  h           h           0x68
  i           i           0x69
  j           j           0x6A
  k           k           0x6B
  l           l           0x6C
  m           m           0x6D
  n           n           0x6E
  o           o           0x6F
  p           p           0x70
  q           q           0x71
  r           r           0x72
  s           s           0x73
  t           t           0x74
  u           u           0x75
  v           v           0x76
  w           w           0x77
  x           x           0x78
  y           y           0x79
  z           z           0x7A
  \{          {           0x7B
  \|          |           0x7C
  \}          }           0x7D
  \~          ~           0x7E
  --------------------------------------

=============================================================================
   Copyright NEC Corporation 2024
