Alert Standard Format (ASF) Applications for Linux* Operating Systems
=====================================================================

January 30, 2006


Contents
========

- Overview
- Prerequisites
- Features
- Installation
- Available Commands
- Known Issues


Overview
========

Intel's Alert Standard Format (ASF) for Linux* is a software suite that
enables alerting on devices running a Linux operating system. It works with 
Intel PRO/100 and PRO/1000 adapters.

ASF is a technology that provides benefits such as system health monitoring, 
physical asset security, and remote control. It is used in systems from 
mobile PC's to desktops, workstations, and servers.

The Intel ASF for Linux Application package consists of a daemon application
and a command line application. For instructions on installing this package,
see the Installation section below.


Prerequisites
=============

Before you install Intel's ASF for Linux package, ensure you have the 
following:

  - Red Hat* 8.0, Red Hat 9.0, Red Hat EL3.0 WS, or SuSE* 8.0, SuSE 8.1 
    (with kernel 2.4.18 or higher), SuSE 8.2, SuSE 8.3
  - Intel's Linux e100 driver, version 3.5.10 or higher, or Linux e1000 
    driver, version 7.0.32 or higher
  - Intel's Alert Standard Format (ASF) Modules for Linux, version 4.0.3-11L
    or higher

  NOTE: The Linux drivers are available on Intel's Customer Support website
        at http://downloadfinder.intel.com/scripts-df/support_intel.asp.


Features
========

This package includes the following features:

  - Detects and monitors changes in the list of ASF-capable adapters present
    in the system
  - Detects and monitors connectivity to the ASF management console
  - Retrieves system information from BIOS and uses it in ASF configuration
  - Invokes system watchdog utility
  - Stores and restores system ASF configuration
  - Legacy sensors polling
  - ASF sensors polling
  - Remote control
  - ASF2.0 security
  - Vlan support (when configuring vlans using the 8021q kernel module).

This package does not support:

  - Management console on same machine


Installation
============

The ASF Application for Linux package includes these components/files:

  - asfd (installed under /usr/sbin)
      ASF daemon (starts on machine boot)
  - libasfd.so.1.0 (installed under /usr/lib)
      dynamic API library for running applications that have an interface 
      with the ASF daemon
  - asfrules.ini (installed under /etc/asfd)
      internal configuration file
  - asfd.conf (created under /etc/asfd after first user configuration)
      file for storing the current ASF system configuration
  - asfd (installed under /etc/init.d)
      script that controls the loading/unloading of the ASF daemon
      For more details, see "Enabling the ASF Daemon" section under 
      Available Commands.
  - asfcli (installed under /usr/sbin)
      command line application for configuring the ASF daemon
  - documentation files: README, license (installed under /usr/share/doc),
      man page (installed under /usr/share/man)


RPM file provided: 

  - asf-apps-x.x.x-xxL.i386.rpm: RPM containing the above components.
  
  Installing an RPM file
  ----------------------

  NOTE: The <filename> parameter must be specific to the application version 
         you are using. It is the entire filename for the RPM, in the form
        'asf-apps-x.x.x-xxL.i386.rpm'. For example, 'asf-apps-4.0.0-10L.i386.rpm'.

  1.  Login as root.

  2.  Determine whether or not a previous version of the RPM is installed:

          rpm -q asf-apps

  3.  If you have a previous version of this RPM installed, use the following 
      command to update the RPM:

          rpm -U <filename>

      You can also uninstall the previous version before installing the new 
      RPM. To remove the RPM, enter:

          rpm -e asf-apps

  4.  If no other version of the RPM is installed on the system, install the 
      new RPM:

          rpm -i <filename>


Available Commands
==================

  ASF Daemon
  ----------

  The ASF package includes a script that controls the loading/unloading of 
  the ASF daemon. This script is installed as asfd under /etc/init.d.

  The asfd script is also linked to relevant start and kill files in the 
  following directories: /etc/rc.d/rcX.d (on Red Hat) or /etc/init.d/rcX.d 
  (on SUSE 8.0). It enables automatic startup and kill of the ASF daemon on 
  various system load and shutdown levels.

  Use the following format for enabling asfd commands:

        /etc/init.d/asfd [options]

  ========================================================================
  OPTION            DESCRIPTION
  ========================================================================
  start             Starts ASF daemon (generally not required because the 
                    daemon is automatically started when the system boots)
  ------------------------------------------------------------------------
  stop              Stops ASF daemon                           
  ------------------------------------------------------------------------
  restart           Restarts ASF daemon                        
  ------------------------------------------------------------------------
  reload            Reloads/restarts the ASF daemon           
  ------------------------------------------------------------------------
  status            Displays current status of ASF             
  ------------------------------------------------------------------------
  version           Displays version of the ASF package and all the 
                    package components
  ------------------------------------------------------------------------


  asfcli Sample application
  -------------------------

  Use the asfcli command as follows:

       asfcli [options]

  The following optional parameters are used by entering them on the command 
  line with the asfcli command, as shown above:
  
  ========================================================================
  OPTION                     DESCRIPTION
  ========================================================================
  init                       Initializes the internal structures of the  agent
  ------------------------------------------------------------------------
  timers                     Shows heartbeat, watchdog, ASF sensors, and 
                             management console pinging settings
  ------------------------------------------------------------------------
  adapters                   Lists the available adapters for alerting
  ------------------------------------------------------------------------
  status                     Displays alerting status information       
  ------------------------------------------------------------------------
  funcs                      Displays a list of supported remote control
                             functions and their state (enabled/disabled)                                                                                  
  ------------------------------------------------------------------------
  sethb <interval>           Sets the interval for heartbeat messages (in
                             seconds)
                             If interval is 0, heartbeat is disabled
  ------------------------------------------------------------------------
  setwd <interval>           Sets the watchdog expiration interval (in 
                             seconds)
                             If interval is 0, watchdog is disabled
  ------------------------------------------------------------------------
  setping <interval>         Sets the interval between pings to the     
                             management console (proxy update) 
                             If interval is 0, proxy update is disabled
  ------------------------------------------------------------------------
  setcom <community_str>     Sets the SNMP community string for PET 
                             packets
  ------------------------------------------------------------------------
  setfunc <function_id> 
     enabled | disabled      Sets the state of a remote-control function 
  ------------------------------------------------------------------------
  setmon <interval>          Sets the ASF sensors monitoring interval      
  ------------------------------------------------------------------------
  disable                    Disables alerting on the current ASF adapter
  ------------------------------------------------------------------------
  apply [adapter] <proxy>    Applies the configuration and enables ASF on 
                             adapter.
                             Sends alerts to the indicated host/IP address.
                             <proxy> is the management console
                             If [adapter] is missing, an adapter is 
                             selected automatically.
  ------------------------------------------------------------------------
  version                    Displays the asfcli version information
  ------------------------------------------------------------------------
  platform                   Checks whether the platform supports ASF 2.0 
                             security
  ------------------------------------------------------------------------
  secadapt <adapter>         Checks whether the adapter is ASF 2.0 security 
                             capable
  ------------------------------------------------------------------------
  secfunc <func_id>          Checks whether the remote control function is 
                             secure
  ------------------------------------------------------------------------
  haskeys                    Checks whether ASF 2.0 security keys are set
  ------------------------------------------------------------------------
  suppfunc <adapter>         Checks whether the remote control function 
  <func_id>                  is supported on adapter
  ------------------------------------------------------------------------
  setkeys <admin> <oper>     Set ASF 2.0 security keys (each should be 40 
  <gener> <random>           characters long)
  ------------------------------------------------------------------------

  Note: Special characters such as: !@#$%^&*() or additional spaces are 
  allowed in the command setcom <community_str> parameter.  Enclose the 
  characters inside “ “ or ( ) delimeters.  

  Special characters are not allowed in any other command. 


Known Issues
============
  
  Changing adapter's MAC address
  ------------------------------
  - ASF will not work properly on power-down if the MAC address of an 
    ASF-enabled adapter is changed (using, for example, "ifconfig ethX hw 
    Ether <MAC-ADDRESS>").

  Linking to Supplied Libraries on RedHat 8
  -----------------------------------------
  - When linking an application/object with the static library libasfd.a on 
    RedHat 8 machines, it is required to also explicitly link to the 
    libstdc++.so.2.9 library, whether using gcc or g++.
  - When linking an application/object with either the static library 
    libasfd.a, or the dynamic library libasfd.so.1.0, on RedHat 8 machines
    using "gcc", it is required to also explicitly link to the libstdc++.so.5 
    library.  

  No ASF Functionality on 82562 systems after panic and power shut-down
  ---------------------------------------------------------------------
  - If you install ASF on an 82562-based system, and a kernel panic and power
    shut-down occur before the first reboot, the system will not function 
    properly, regardless of the driver and ASF agent version. You must reboot
    the system for proper operation.

  Re-burning adapter's EEPROM
  ---------------------------
  - Scenario:   The EEPROM image of an ASF capable adapter was re-burned 
                after ASF agent was installed and ASF2.0 security keys 
                were set.
    Symptom:    May cause loss of functionality of ASF2.0 commands.
    Workaround: Reenter the existing security keys using the ASF agent 
                user interface.

  No BIOS boot hang event sent on 82573 Gigabit Ethernet Controller
  -----------------------------------------------------------------
  - Scenario:   82573 Gigabit Ethernet Controller was configured to send
		watchdog expiration event in case boot hang occurs.
    Symptom:    No watchdog expiration event is being sent upon BIOS boot hang.
    Workaround: No workaround available.


Legal Disclaimer
================

INTEL CONFIDENTIAL
    
Copyright (c) 2002-2006  Intel Corporation. 
All Rights Reserved.
    
The source code contained or described herein and all documents related to 
the source code ("Material") are owned by Intel Corporation or its suppliers
or licensors. Title to the Material remains with Intel Corporation or its 
suppliers and licensors. The Material contains trade secrets and proprietary
and confidential information of Intel or its suppliers and licensors. The 
Material is protected by worldwide copyright and trade secret laws and 
treaty provisions. No part of the Material may be used, copied, reproduced, 
modified, published, uploaded, posted, transmitted, distributed, or 
disclosed in any way without Intel's prior express written permission.
  
No license under any patent, copyright, trade secret or other intellectual 
property right is granted to or conferred upon you by disclosure or delivery
of the Materials, either expressly, by implication, inducement, estoppel or 
otherwise. Any license under such intellectual property rights must be 
expressed and approved by Intel in writing.

Intel's Alert Standard Format (ASF) for Linux includes components that are
released under Binary license, as indicated below:

Components in asf-apps-<version>.i386.rpm:

Binary:
  ASF Daemon - asfd, configuration/setup files (including 
   /etc/init.d/asfd script)
  ASF Daemon API library - libasfd.so.1.0
  Command Line application - asfcli


* Other names and brands may be claimed as the property of others.
