ixCheckPPPState

ixCheckPPPState - checks the PPP state on a group of POS ports

SYNOPSIS

ixCheckPPPState portList [message]

DESCRIPTION

The ixCheckPPPState command checks the PPP state of all PoS ports in a group of ports in parallel and labels the ones that are down. Then it polls the links that are down for two seconds and returns 1 if any port is still down and a 0 if all ports are up.

ARGUMENTS
portList

(By reference) The list of ports in one of the following formats:

one2oneArray, one2manyArray, many2oneArray, many2manyArray

Or a reference to a list. For example, pl after

set pl {{1 1 1} {1 1 2} {1 1 3} {1 1 4}} -or-

set pl {1,1,1 1,1,2 1,1,3 1,1,4}

message

(By value) (Optional, default = messageOn) Indicates that a message with the ports' state is to be written to STDOUT or not.

RETURNS
0

Links on all ports are up.

1

Link on one or more ports is down.

EXAMPLES

package req IxTclHal

set host galaxy

set username user

# Check if we're running on UNIX - connect to the TCL Server

# which must be running on the chassis

if [isUNIX] {

if [ixConnectToTclServer $host] {

ixPuts "Could not connect to $host"

return 1

}

}

# Now connect to the chassis

if [ixConnectToChassis $host] {

ixPuts $::ixErrorInfo

return 1

}

# Get the chassis ID to use in port lists

set chassis [ixGetChassisID $host]

set cardA 2

set portA 1

set cardB 2

set portB 2

set portList [list [list $chas $cardA $portA] [list $chas $cardB $portB]]

# Login before taking ownership

if [ixLogin $username] {

ixPuts $::ixErrorInfo

return 1

}

# Take ownership of the ports we'll use

if [ixTakeOwnership $portList] {

ixPuts $::ixErrorInfo

return 1

}

map new -type one2one

map config -type one2one

map add $chassis $cardA $portA $chassis $cardB $portB

map add $chassis $cardB $portB $chassis $cardA $portA

if {[ixCheckPPPState one2oneArray] != 0} {

ixPuts "PPP is down"

}

# Let go of the ports that we reserved

ixClearOwnership $portList

# Disconnect from the chassis we're using

ixDisconnectFromChassis $host

# If we're running on UNIX, disconnect from the TCL Server

if [isUNIX] {

ixDisconnectTclServer $host

}

SEE ALSO