nv-l

RE: [nv-l] How to pass Octet String trap parameter to script ?

2003-09-16 12:41:37
Subject: RE: [nv-l] How to pass Octet String trap parameter to script ?
From: "Allison, Jason (JALLISON)" <JALLISON AT arinc DOT com>
To: nv-l <nv-l AT lists.tivoli DOT com>
Date: Tue, 16 Sep 2003 12:40:18 -0400
Are you sure that the data you are sending is formatted correctly in the ASN.1/SMI trap?
 
If I were in your shoes I would circumvent nvevents and get my info directly from trapd.  This will allow you to look directly into the trap and pull what data you need.  You can do this using the Netview API 'OVsnmpRecv'.  Take a look at /usr/OV/prg_samples, you will find examples there.
 
Remember vardinds are a union structure so you need to look at the type before making a determination of the data content.  Varbind types as defined by Netview (that I use) are:
 
    case ASN_INTEGER:
    case ASN_U_INTEGER:
    case ASN_TIMETICKS:
    case ASN_GAUGE:
    case ASN_COUNTER:
    case ASN_OCTET_STR:
    case ASN_OPAQUE:
    case ASN_IPADDRESS:
    case ASN_OBJECT_ID:
    case ASN_NULL:
 
Best of luck,

Jason Allison
Principal Engineer
ARINC Incorporated
Office:  (410) 266-2006
FAX:  (410) 573-3026

-----Original Message-----
From: Philippe Menard [mailto:PME AT fr.ibm DOT com]
Sent: Tuesday, September 16, 2003 12:31 PM
To: nv-l AT lists.tivoli DOT com
Subject: Re: [nv-l] How to pass Octet String trap parameter to script ?


All,

I do pass all the variables within quotes as in  : <myscript> "$1" "$2" "$3" "$4" "$5".

> What you are passing to your script is raw data from trapd.
That is exactly the subject of this question : is there a way to instruct trapd and ovactiond
to pass "cooked" data to a script ?

The NV documentation explains when to use $1, $-1, $+1, etc but I could find nothing
about converting a string of bytes (e.g. 0x08 07 02 04 01 01 02 01 : from an actual device)
into something that a script can work with, i.e. which can be unescaped. I guess that
even AdditionalLegalTrapCharacters could not help here.

Regards,
Phil.

- - -

Philippe MÉNARD
Networking Delivery Support Center
Mail : pme AT fr.ibm DOT com
Phone : +33 (0)4 92 11 48 69
Fax : +33 (0)4 93 24 49 07




James Shanks/Raleigh/IBM@IBMUS

16/09/2003 17:56

       
        To:        nv-l AT lists.tivoli DOT com
        cc:        
        Subject:        Re: [nv-l] How to pass Octet String trap parameter to script ?

       



What's in the display window of nvevents is a construction. nvevents has already set aside a buffer and interpreted it.  What you are passing to your script is raw data from trapd.


If it contains blanks, then you must enclose it in quotes, just as you would any other script input on the command line.    You have to pass

       <myscript>  "$3"  

not just
       <myscript> $3
or the shell will pass only the first word of $3.


In general it doesn't hurt to enclose all of your variables

       <myscript> "$1" "$2" "$3" "$4" "$5"

when you don't know what form the incoming data will take.

James Shanks
Level 3 Support  for Tivoli NetView for UNIX and Windows
Tivoli Software / IBM Software Group


"Philippe Menard" <PME AT fr.ibm DOT com>

09/16/2003 11:42 AM

       
       To:        nv-l AT lists.tivoli DOT com

       cc:        

       Subject:        [nv-l] How to pass Octet String trap parameter to script ?





All,


AIX 4.3.3 ML10 + NV 7.1.3 + popular patches.


I need to provide a script with the parameters found in a trap.

$1, $2, etc work fine for integers and strings but doesn't for Octet Strings.


It seems that the bytes are passed (and escaped for most of them) by ovactiond.

Is there is way to get the bytes string as displayed in the events window ?

( i.e. a string like "0x01 12 34 ab ..." )

Best regards,

Philippe.


- - -

Philippe MÉNARD
Networking Delivery Support Center
Mail : pme AT fr.ibm DOT com
Phone : +33 (0)4 92 11 48 69
Fax : +33 (0)4 93 24 49 07