Пример #1
0
 def __init__(self, **kw):
     fields=(                            # Available with CIS Interface version
     String('uow_id', 16),               # 2 UOW ID
     String('conv_id', 16),              #   Conversation ID
     String('senderuid',32),             #   Sender UserID
     String('sendertoken',32),           #   Sender User Token
     String('senderserver',32),          #   Sender SERVER-NAME
     String('senderclass',32),           #   Sender SERVER-CLASS
     String('senderservice',32),         #   Sender SERVICE
     String('recvruid',32),              #   Receiver UserID
     String('recvrtoken',32),            #   Receiver User Token
     String('recvrserver',32),           #   Receiver SERVER-NAME
     String('recvrclass',32),            #   Receiver SERVER-CLASS
     String('recvrservice',32),          #   Receiver SERVICE
     String('userstatus',32),            #   User status
     Uint1('uowstatus',ppfunc=lambda x:'%-9s'%uowStatus_str(x)), #   Unit of work status
     Uint1('eoc'),                       #   End of conversation? 0|1
     Uint1('store'),                     #   Persistent? 0|1
     Uint1('uowstatstore'),              #   Persistent UOW status? 0|1
     Uint4('eocreason'),                 #   EOC reason code
     Uint4('deliveries'),                #   Attempt to delivery count
     Uint4('msgcnt'),                    #   Number of messages
     Uint4('msgsize'),                   #   Total message size
     String('uwstatus_lifetime',32),     #   Status life time
     String('uwcreate_time',32),         #   Unit of work creation time
     Uint4('uw_lifetime',ppfunc=intervalstr),# 2 Unit of work life time
     )
     Datamap.__init__(self, 'PersistentMessage', *fields, **kw)
Пример #2
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBI',
         String('urbieye', 4),  # URBI eye-catcher 'URBI'
         Int4('urbilen'),  # Length of URBI + selection data + filler
         Int4('urbilenh'),  # Length of URBI proper (>= URBIL)
         Int4('urbilend'),  # Length of selection data (may be zero)
         String('urbirtok', 8),  # Request ID token (returned in response)
         String('urbirnam', 8),  # Destination name for response
         String('urbirt', 4,
                ppfunc=urbirt_str),  # Request type: STAT/INST/TRAN
         Uint2('urbidbid'),  # Database ID (INST request)
         Uint2('urbifnr'),  # File number (INST request)
         String('urbiinam', 8),  # Initial-state name (INST request)
         String('urbisnam',
                8),  # Subscription name or blank (STAT/TRAN req)
         String('urbidnam', 8),  # Destination name or blank (STAT/TRAN req)
         Uint4('urbiacod'),  # alpha field encoding in selection data
         Uint4('urbiwcod'),  # wide field encoding in selection data
         Bytes('urbiarc', 1),  # architecture flags for selection data
         String('urbires1', 3, opt=T_NONE),  # Reserved area1
         Uint4('urbitsnr'),  # Transaction seq.no. within
         #   subscription/destination (TRAN req)
         String('urbires2', 16, opt=T_NONE),  # Reserved area2
         # Optional selection data (INST request)
         **kw)
Пример #3
0
    def __init__(self, **kw):
        fields=(                            # Available with CIS Interface version
        String('conv_id', 16),              # 1 Conversation ID

        String('serveruid', 32),            #   Server's UserID
        Bytes('serverpuid', 28),            #   Server's physical UserID
        String('serverpuidtrans',28,opt=T_NONE), # Server's translated PUID (unused)
        String('servertoken', 32),          #   Server's Token

        String('clientuid', 32),            #   Client's UserID
        Bytes('clientpuid', 28),            #   Client's physical UserID
        String('clientpuidtrans',28,opt=T_NONE), # Client's translated PUID
        String('clienttoken', 32),          #   Client's Token

        String('server_class', 32,opt=T_NONE),# SERVER-CLASS
        String('server', 32,opt=T_NONE),    #   SERVER-NAME
        String('service',32,
            ppfunc=lambda svc:'%s/%s/%s' % (self.server_class,self.server,svc)),
                                            # SERVICE = class/server/service

        Uint4('conv_nonact',ppfunc=intervalstr), #   Conversation timeout
        Uint4('last_active',ppfunc=intervalstr), #   Seconds since last activity
        Uint2('type'),                      # 1 Conversation type 0: conv, 1: non-conv
        Uint2('unused1',opt=T_NONE),        # 2 Alignment
        Uint4('totaluows'),                 # 2 Number of active UOWs
        String('client_rpc_libname', 128),  # 6 Client's
        String('client_rpc_progname',128),  # 6
        String('server_rpc_libname', 128),  # 6 Server's
        String('server_rpc_progname',128),  # 6
        )
        Datamap.__init__(self, 'Conversation', *fields, **kw)
Пример #4
0
    def __init__(self, **kw):
        Datamap.__init__(
            self,
            'DRL',
            String('name', 8),
            Bytes('ttr', 3),
            Uint1(
                'flag'),  # Alias flag 0x80 and user half words (max 0x1f * 2)

            # --- if length in flag is 0x0f, ie. 30 bytes ISFP statistics follow
            Uint1('vv'),  # version (set by SCLM?)
            Uint1('mm'),  # modifications (range 0-99)
            Uint1('ind'),  # SCLM indicator
            Uint1('ss'),  # time last modified (second part)
            Packed('credate', 4),  # ibm creation date  0119001f = 20190101
            Packed('moddate', 4),  # date last modified 0099032f = 19990201
            Uint2('hhmm'),  # time last modified 0xhhmm
            Uint2('size2'),  # current number of lines, 655
            Uint2('init2'),  # initial number of lines
            Uint2('chgd2'),  # number of lines changed
            String('id', 8),  # user id of last modification

            # --- the following is only set if hw length in flag is 0x14 (=40 bytes)
            #     then ind & MIINDXSTA will be set
            Uint4('size'),  # current number of lines
            Uint4('init'),  # initial number of lines
            Uint4('chgd'),  # number of lines changed
            byteOrder=NETWORKBO,
            **kw)
Пример #5
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBII',
         Uint4('urbiisn'),  # ISN
         #   or alternatively:
         Int4('urbiirange', repos=-4),  # Range indicator
         Uint4('urbiisn1'),  # from ISN
         Uint4('urbiisn2'),  # to ISN
         **kw)
Пример #6
0
 def __init__(self, **kw):
     fields = (  # Available with CIS Interface version
         Uint2('version', opt=T_IN),  # 1 Interface version
         Uint2(
             'object_type', opt=T_IN,
             ppfunc=cio_str),  # 1 Object type to which the command applies
         Uint2('command', opt=T_IN, ppfunc=cic_str),  # 1 CIS command
         Uint2('option', opt=T_IN, ppfunc=cip_str),  # 1 CIS option
         Bytes(
             'puid', 28, opt=T_HEX
         ),  # 1 internal userid that distinguishes users with same userids
         #   id obtained from previous call, no translation done
         String(
             'uowid', 16,
             opt=T_IN),  # 2 Selector, optional, unit of work to be purged
         String(
             'topic', 96, opt=T_IN
         ),  # 4 Selector, optional, topic to be subscribed or unsubscribed to
         String(
             'uid', 32, opt=T_IN
         ),  # 4 Selector, optional, user name for subscription/unsubscription
         #   and participant shutdown
         String(
             'token', 32, opt=T_IN
         ),  # 4 Selector, optional, token for subscription/unsubscription
         #   and participant shutdown
         String(
             'server_class', 32, opt=T_IN
         ),  # 5 Selector, optional, for command log filter addition or removal
         String(
             'server', 32, opt=T_IN
         ),  # 5 Selector, optional, for command log filter addition or removal
         String(
             'service', 32, opt=T_IN
         ),  # 5 Selector, optional, for command log filter addition or removal
         Filler('reserved', 32),  # 5 Reserved
         String(
             'conv_id', 16,
             opt=T_IN),  # 7 Selector, optional, for shutdown conversation
         String('transportid', 3, opt=T_IN
                ),  # 7 Selector, optional, for transport task (NET|Snn|Tnn)
         #   required for RESUME,START,STATUS,STOP,SUSPEND
         Uint1(
             'exclude_attach', opt=T_IN
         ),  # 7 Optional. Exclude attach servers when shutting down a service
         Uint4(
             'seqno', opt=T_IN
         ),  # 7 Optional. Sequence number of participant (e.g. client, server,
         #   publisher) to be shut down. Can be used instead of puid
         Uint4(
             'error_number', opt=T_IN
         ),  # 7 Optional. Sequence number of participant (e.g. client, server,
     )
     Datamap.__init__(self, 'Cisreq', *fields, **kw)
Пример #7
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBC',
         String('urbceye', 4),  # URBC eye-catcher 'URBC'
         Int4('urbclen'),  # Length of URBC
         String('urbcsnam', 8),  # Subscription name
         Uint4('urbctsnr'),  # Current transaction sequence number
         #   within subscription/destination
         Uint4('urbcrsnr'),  # Current record sequence number
         Uint4('urbcdsnr'),  # Current data sequence number for record
         String('urbccont', 1,
                ppfunc=urbcont_str),  # Indicator transaction continuation
         String('filler1', 19, opt=T_NONE),  # Reserved area
         **kw)
Пример #8
0
    def __init__(self, **kw):
        Datamap.__init__(
            self,
            'URBS',
            String('urbseye', 4),  # URBS eye-catcher 'URBS' #
            Int4('urbslen'),  # Length of URBS + data (C5DA) + filler
            String('urbsrtok', 8),  # Request ID token (from original request),
            String('urbsrt', 4),  # Request type (blank if no request):
            String('urbsst', 4,
                   ppfunc=urbsst_str),  # Reptor status/response information:
            Uint8('urbstime',
                  opt=T_STCK),  # Time (STCK) when this URBS was created
            Uint4('urbsrsp'),  # Response code for request
            Uint4('urbssubc', ppfunc=self.urbssubc_str),  # Subcode for request
            String('urbserri', 8),  # Other pertinent error information
            String('urbsinam',
                   8),  # Initial-state name (INIT/CMPL/ERRO message)
            String('urbssnam', 8),  # Subscription name (ASEC/C5DA/DCMP/DEAC/
            # LOST/REAC/REFR/RPLE/RPLS/SUBS/TRSP msg)
            String(
                'urbsdnam', 8
            ),  # Destination name (DEAC/DERR/FULL/REAC/REFR/SLOF/SLON message)
            Uint8('urbsptim', opt=T_STCK),  # Time (STCK) transaction processed
            # for subscription (SUBS)
            Uint8('urbsttim', opt=T_STCK),  # Time (STCK) transaction commit
            # (ASEC/AUTI/C5DA/SUBS)
            Uint4('urbstsnr'),  # Transaction sequence number within
            # subscription/destination (SUBS/TRSP message)
            Uint2('urbsdbid'
                  ),  # Database ID  //(ASEC/CMPL/DCMP/DEAC/ERRO/INIT/LODS/
            Uint2('urbsfnr'
                  ),  # File number // LODE/LOST/REAC/SAVS/SAVE/UPDS/UPDE msg)
            Int4('urbslenh'),  # Length of URBS
            Int4('urbslend'),  # Length of related data (at URBSDATA)
            Uint2('urbsutok'
                  ),  # Utility token (CMPL/ERRO/INIT/LODS/LODE/RPLS/RPLE/
            #   SAVS/SAVE/UPDS/UPDE message)
            String('urbsorig', 1,
                   ppfunc=urborig_str),  # Origin of status (C5DA/RPLS/RPLE)
            String('filler1', 5, opt=T_NONE),  # Reserved area
            String('urbsiqnm', 8),  # Input Queue name (IQCL/IQOP/REFR msg)
            String('filler2', 8, opt=T_NONE),  # Reserved area
            #urbsdata    following here. Add URBSL to the URBS start

            # For the RPLS/RPLE message, URBSDATA contains a list of 2-byte
            # file numbers of the file(s) associated with the replay process
            # for the subscription given in URBSSNAM
            **kw)
Пример #9
0
 def __init__(self, **kw):
     fields=(                            # Available with CIS Interface version EXX 9/10
     String('server_class', 32,opt=T_NONE),# SERVER-CLASS
     String('server', 32,opt=T_NONE),    #  SERVER-NAME
     String('service',32,
         ppfunc=lambda svc:'%s/%s/%s' % (self.server_class,self.server,svc)),
                                         # SERVICE = class/server/service
     Uint8('uows'),                      # Number of active UOWs (active==current)
     Uint8('messages'),                  # Number of active UOW messages
     Uint8('Bytes'),                     # Number of bytes in active UOW messages
     Uint4('max_messages'),              # Max. number of messages in one UOW
     Uint4('max_bytes'),                 # Max. number of bytes in one UOW
     String('oldest_uow',32),            # Oldest time of UOW creation
     String('newest_uow',32),            # Newest time of UOW creation
     )
     Datamap.__init__(self, 'UOW Statistics', *fields, **kw)
Пример #10
0
    def __init__(self, **kw):
        Datamap.__init__(self, 'SMF Record Header',
    Int2('rlen'), # Record length        RDW header
    Uint1('seg'), # Segment control
    Uint1('seg2'), # Segment control 2 (unused)

    Bytes('flg',1,caption='System indicator'), # System indicator flags
    #q Asfxxx   equ    x'80'               subsystem id follows system id
    #q Asfstv   equ    x'40'               subtypes are valid
    #q Asfv4    equ    x'10'               mvs/sp v4 and above
    #q Asfv3    equ    x'08'               mvs/sp v3 and above
    #q Asfv2    equ    x'04'               mvs/sp v2 and above
    #q Asfvs2   equ    x'02'               vs2

    Uint1('rty',caption='SMF record type'),  # SMF record type

    Uint4('tme',ppfunc=dtime100,caption='Record creation time'), # Time since midnight
                                  # when record was moved into smf buffer in 1/100 sec

    Packed('dte',4,ppfunc=idate,caption='Record creation date'), # Date when record was
                                  # moved into smf buffer as 0cyydddf

    String('sid',4,caption='System identifier'), # smfprmxx sid
    # up to here if SMF record withtout subtypes

    String('ssi',4,caption='Subsystem identifier'),
    Uint2('sty',caption='Subtype'), # Subtype  ppfunc=Asbase.assty_str
    byteOrder=NETWORKBO,ebcdic=1,**kw)
Пример #11
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBH',
         String('urbheye', 4),  # URBH eye-catcher 'URBH' (in EBCDIC)
         Int4('urbhlen'),  # Length of URBH
         String('urbhvers', 2),  # Version indicator for URB* DSECTs:
         Int2('urbhbord', opt=T_HEX),  # Const 1 to indicate the byte order
         Uint4('urbhlent'),  # Total message length (including URBH)
         Uint4('urbhmsnr'),  # Message sequence number per destination
         Uint8('urbhtime', opt=T_STCK),  # Time (STCK) when message was sent
         Uint2('urbhrpid'),  # Target ID of originating Reptor
         Uint2('urbhrpni'),  # Nucleus ID of originating Reptor
         String('urbhname', 8),  # Sender name ('REPTOR' if sent by Reptor)
         String('filler1', 24, opt=T_NONE),  # Reserved area
         **kw)
Пример #12
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBE',
         String('urbeeye', 4),  # URBE eye-catcher 'URBE'
         Int4('urbelen'),  # Length of URBE
         String('urbesnam', 8),  # Subscription name
         Uint4('urbetsnr'),  # Transaction sequence number
         #   within subscription/destination
         String('filler1', 12, opt=T_NONE),  # Reserved area
         **kw)
Пример #13
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBT',
         String('urbteye', 4),  # URBT eye-catcher 'URBT' #
         Int4('urbtlen'),  # Length of URBT
         String('urbtsnam', 8),  # Subscription name
         Uint4('urbttsnr'),  # Transaction sequence number
         #   within subscription/destination
         Uint4('urbtrcnt'),  # Count of records (URBRs) in transaction
         Uint8('urbtttim', opt=T_STCK),  # Time (STCK) transaction commit
         Uint8('urbtptim', opt=T_STCK),  # Time (STCK) end of subscription
         Uint2('urbtdbid'),  # Originating Adabas database ID
         Uint2('urbtnuci'),  # Originating Adabas nucleus ID
         Bytes('urbtguid', 28),  # Originating 28-byte user ID
         Uint2('urbtrpid'),  # Reptor target ID (DBID parameter)
         Uint2('urbtrpni'),  # Reptor nucleus ID (not yet used) => zero
         String('urbtusrv', 2),  # User subscription version indicator,
         String('urbtrsnd', 1,
                ppfunc=urbrsnd_str),  # Ind. possible double delivery
         String('urbtinst', 1,
                ppfunc=urbtinst_str),  # Ind. for initial state
         String('urbtrtok', 8),  # Request ID token (if initial state)
         String(
             'urbtcont', 1,
             ppfunc=urbcont_str),  # Indicator for transaction continuation:
         Bytes('urbtarc', 1),  # Architecture flags for selection data
         String('urbtptrn', 1,
                ppfunc=urbtptrn_str),  # Prior-transaction request indicator
         String('urbtsort', 1,
                ppfunc=urbtsort_str),  # Transaction records sorted
         Uint4('urbtacod'),  # alpha field encoding in selection data
         Uint4('urbtwcod'),  # wide field encoding in selection data
         Uint2(
             'urbtutok'
         ),  # utility token if data comes from Replay or Adalod Load/Update
         String('urbtorig', 1, ppfunc=urborig_str),  # Origin of transaction
         String('filler1', 1, opt=T_NONE),  # Reserved area
         String('urbtsuid', 8),  # Security system user id
         String('filler2', 16, opt=T_NONE),  # Reserved area
         **kw)
Пример #14
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBSU55',
         Uint2('assopfac'),  # Asso padding factor
         Uint2('datapfac'),  # Data padding factor
         Uint4('maxrecl'),  # Max. record length
         Uint2('maxui'),  # Max sec alloc Upper Index
         Uint2('maxni'),  # Max sec alloc Normal Index
         Uint2('maxds'),  # Max sec alloc Data storage
         String('pgmrefresh', 1),  # PGMREFRHESH='Y'/'N' #
         String('rplupdateonly', 1),  # RPLUPDATEONLY='Y'/'N' #
         **kw)
Пример #15
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBD',
         String('urbdeye', 4),  # URBD eye-catcher 'URBD'
         Int4('urbdlen'),  # Length of URBD + related data + filler
         Int4('urbdlenh'),  # Length of URBD
         Int4('urbdlend'),  # Length of related data (at URBDDATA)
         Uint4('urbddsnr'),  # Data sequence number for record
         String('urbdtyp', 1, ppfunc=urbdtyp_str),  # Type of data
         String('filler1', 11, opt=T_NONE),  # Reserved area
         # Payload data following (before or after image)
         **kw)
Пример #16
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBR',
         String('urbreye', 4),  # URBR eye-catcher 'URBR'
         Int4('urbrlen'),  # Length of URBR
         Uint4('urbrrsnr'),  # Record sequence number within transaction
         Int2('urbrdcnt'),  # Count of data elements (URBDs)
         Uint2('urbrfnr'),  # Original Adabas file number
         Uint4('urbrisn'),  # Original Adabas ISN
         Uint8('urbrtime', opt=T_STCK),  # Time (STCK) of last modification
         String('urbrtyp', 1, ppfunc=urbrtyp_str),  # Type of update
         String('urbrrsnd', 1,
                ppfunc=urbrsnd_str),  # Ind. possible double delivery
         Uint2('urbrrsp'),  # Response code
         Uint4('urbrsubc'),  # Subcode information
         String('urbrerrc', 8),  # Other error code information
         String('urbrdcu', 1, ppfunc=urbrdcu_str
                ),  # Indicator for delete to update conversion
         String('urbruc', 1, ppfunc=urbruc_str
                ),  # Indicator for update conversion to delete or insert
         String('filler1', 18, opt=T_NONE),  # Reserved area
         **kw)
Пример #17
0
    def __init__(self, **kw):
        Datamap.__init__(
            self,
            'URBSH',
            String('urbsheye', 6),  # URBSH eye-catcher 'URBSH'
            Uint1('urbshver'),  # Length of URBS + data (C5DA) + filler
            String(
                'urbshtyp', 1
            ),  # Destination Broker 'E': if ETBINFO data == 0: no UOWs found (all consumed by target)
            Uint8('urbshctm',
                  opt=T_STCK),  # Time (STCK) of messaging system commit
            Uint8(
                'urbshttm', opt=T_STCK
            ),  # Time (STCK) of last transaction processed by destination
            Uint8(
                'urbshsdw',
                opt=T_STCK),  # Time (STCK) when heartbeat was written to SLOG
            Uint8(
                'urbshsdr', opt=T_STCK
            ),  # Time (STCK) when heartbeat was read from SLOG (de-logged)

            # the following fields are set for a EntireX Broker destination
            Uint8('urbshbtm', opt=T_STCK
                  ),  # Time (STCK) of ETBINFO taken (before sending URBS)
            Uint8(
                'urbshbtn', opt=T_STCK
            ),  # Time (STCK) when newest item was created in Broker queue
            Uint8(
                'urbshbto', opt=T_STCK
            ),  # Time (STCK) when oldest item was created in Broker queue
            Uint8('urbshbcb'),  # current number of bytes in Broker queue
            Uint8('urbshbcm'),  # current number of messages in Broker queue
            Uint8('urbshbcu'),  # current number of UOWs in Broker queue
            Uint4('urbshbxb'),  # max number of bytes in one UOW
            Uint4('urbshbxm'),  # max number of messages in one UOW
            **kw)
Пример #18
0
 def __init__(self, **kw):
     Datamap.__init__(
         self,
         'URBF',
         String('urbfeye', 4),  # URBF eye-catcher 'URBF'
         Uint4('urbflen'),  # Length of URBF + related data (n*URBG)
         Uint4('urbflenh'),  # Length of URBF
         Uint4('urbflend'),  # Length of related data (n*URBG)
         String('urbfvers', 2),  # GFFT version indicator
         String('urbffnre', 5),  # File number eye-catcher
         Uint1('urbfflag', ppfunc=urbfflag_str),  #
         String('urbfgfid', 8),  # Global format ID related to GFFT
         Uint4('urbfdbid'),  # DBID of file
         Uint2('urbffnr'),  # File number
         Uint2('urbffnml'),  # Length of file name
         String('urbffnam', 32),  # File/userview name
         Uint8('urbftim1',
               opt=T_STCK),  # Time (STCK) GFFT was created/refreshed
         Uint2('urbfcntg'),  # Number of following URBG elements
         Uint2('urbfleng'),  # Length of each URBG element
         Uint8('urbftim2',
               opt=T_STCK),  # Time (STCK) GFFT for ADARDE(DEXIT)
         Bytes('filler1', 20, opt=T_NONE),  # Reserved area
         **kw)
Пример #19
0
 def __init__(self, **kw):
     fields = (  # Available with CIS Interface version
         String('uow_id', 16),  # 2 UOW ID
         String('conv_id', 16),  #   Conversation ID
         String('senderuid', 32),  #   Sender UserID
         String('sendertoken', 32),  #   Sender User Token
         String('senderserver', 32),  #   Sender SERVER-NAME
         String('senderclass', 32),  #   Sender SERVER-CLASS
         String('senderservice', 32),  #   Sender SERVICE
         String('recvruid', 32),  #   Receiver UserID
         String('recvrtoken', 32),  #   Receiver User Token
         String('recvrserver', 32),  #   Receiver SERVER-NAME
         String('recvrclass', 32),  #   Receiver SERVER-CLASS
         String('recvrservice', 32),  #   Receiver SERVICE
         String('userstatus', 32),  #   User status
         Uint1('uowstatus', ppfunc=lambda x: '%-9s' % uowStatus_str(x)
               ),  #   Unit of work status
         Uint1('eoc'),  #   End of conversation? 0|1
         Uint1('store'),  #   Persistent? 0|1
         Uint1('uowstatstore'),  #   Persistent UOW status? 0|1
         Uint4('eocreason'),  #   EOC reason code
         Uint4('deliveries'),  #   Attempt to delivery count
         Uint4('msgcnt'),  #   Number of messages
         Uint4('msgsize'),  #   Total message size
         String('uwstatus_lifetime', 32),  #   Status life time
         String('uwcreate_time', 32),  #   Unit of work creation time
         Uint4('uw_lifetime',
               ppfunc=intervalstr),  # 2 Unit of work life time
         Uint1('arf'),  # 10 Adabas replicator flag
         Uint1('scm'),  #    Single conversation mode
         String('unused', 2, opt=T_NONE),  #    Alignment
         Uint4('maxPostponeAttempts'),  #
         Uint4('remainingPostponeAttempts'),  #
         Uint4('postponeDelay'),  #
         String('back2accepted',
                32),  #    Unit of work postponed to ACCEPTED
         String('commit_time', 32),  #    Unit of work commit time
         String('create_time', 32),  # 10 UOW create time (PSTORE V5)
     )
     Datamap.__init__(self, 'PersistentMessage', *fields, **kw)
Пример #20
0
 def __init__(self, **kw):
     fields = (  # Available with CIS Interface version
         # | Optional/Required
         # | |
         Uint4('block_length'),  # 1 R  Return data in this length
         Uint2('version'),  # 1 R  Interface version
         Uint2('reserved1', opt=T_NONE),  #
         Uint2(
             'object_type'),  # 1 R  Object type for which info is requested
         String('uid', 32),  # 1 O  Selector user id of client or server
         Bytes('puid', 28, opt=T_HEX
               ),  # 1 O  Selector internal userid that distinguishes users
         #      with same userids, no translation done
         String('token', 32),  # 1 O  Selector
         String('server_class', 32),  # 1 O  Selector
         String('server', 32),  # 1 O  Selector
         String('service', 32),  # 1 O  Selector
         String('conv_id', 16),  # 1 O  Selector
         Uint2('reserved2', opt=T_NONE),  # 1
         String('uowid', 16),  # 2 O  Selector
         Uint1('uowstatus'),  # 2 O  Selector
         String('userstatus', 32),  # 2 O  Selector
         String('recvuid', 32),  # 2 O  Selector UOW reciever's user id
         String('recvtoken', 32),  # 2 O  Selector UOW reciever's token
         String('recvserver',
                32),  # 2 O  Selector UOW reciever's server name
         String('recvservice',
                32),  # 2 O  Selector UOW reciever's service name
         String('recvclass', 32),  # 2 O  Selector UOW reciever's class name
         String('reserved3', 3, opt=T_NONE),  # 2
         String('topic', 96),  # 4 O  Selector
         String('publicationid', 16),  # 4 O  Selector
         Uint2('subscriptiontype'),  # 4 O  Selector
         Uint2('reserved4', opt=T_NONE),  # 4
         Uint2('conv_type'),  # 5 O  Selector
         Uint2('reserved5', opt=T_NONE),  # 5
     )
     Datamap.__init__(self, 'Infreq', *fields, **kw)
Пример #21
0
  def __init__(self, **kw):
    Datamap.__init__(self, 'Job/Session Id Section',
    String('jbn',8,caption='Job/session name'), # JMRJOB
    String('pgm',8,caption='Program name'),     # SCTPGMNM '*.DD.' if backward reference
    String('stm',8,caption='Step name'),        # SCTSNAME
    String('uif',8,caption='User id'), # JMRUSEID taken from the common exit parm
    String('jnm',8,caption='JES job id'),  # SSIB

    Uint2('stn',caption='Step number'),         # SCTSNUMB, first step = 1
    String('cls',1,caption='Job class'),        # JCTJCSMF, zero for TSO/started task
    Uint1('jb1',caption='Job/Session Id section flag'),
    Uint2('pgn',caption='Job performance group member'), # OUCBNPG
    Uint2('jpt',caption='JES input priority'),  # JCTJPRTY

    Uint4('ast',ppfunc=dtime100,caption='Device allocation start time'), # TCTAST
    Uint4('pss',ppfunc=dtime100,caption='Problem program start time'),   # TCTPPST
    Uint4('sit',ppfunc=dtime100,caption='Time initiator selected step'), # JCTJMRSS
    Packed('std',4,ppfunc=idate,caption='Date initiator selected step'), # JCTSSD
    Uint4('rst',ppfunc=dtime100,caption='Time reader found job card'), # JMRENTRY
    Packed('rsd',4,ppfunc=idate,caption='Date reader found job card'), # JMREDATE
    Uint4('ret',ppfunc=dtime100,caption='Time reader found end of job'),
    Packed('red',4,ppfunc=idate,caption='Date reader found end of job'),

    String('usr',20,caption='Programmers name'),# ACTPRGNM
    String('grp',8,caption='RACF group id'),    # ACEEGRPN
    String('rud',8,caption='RACF user id'),     # ACEEUSRI
    String('tid',8,caption='RACF terminal id'), # ACEETRMF

    String('tsn',8,caption='Terminal sybolic name'), # TSBTRMID
    String('psn',8,caption='Step name invoking procedure'), # SCTSCLPC, blanks if step not part of expanded procedure
    String('cl8',8,caption='Job class'), # LCTCLASS or JCTJCSMF
    Uint8('iss',opt=T_STCK,caption='Interval start time'), # TCTISS for subtype 2, 3 and 6 records
    Uint8('iet',opt=T_STCK,caption='Interval end time'),   # SMCXINTE for subtype 2, 3 and 6 records

    Uint4('ssn',ppfunc=dtime100,caption='Sub-step number'),# SCTSSNUM
    String('exn',16,caption='OpenMVS program name'),
    Uint2('asi',opt=T_HEX,caption='Address space id'),    # ASCBASID
    String('cor',64,opt=T_NONE,caption='JES job correlator'),  # JMRJOBCORRELATOR

    byteOrder=NETWORKBO,ebcdic=1,**kw)
Пример #22
0
    ][seg]


rdw = Datamap(
    'RDW',
    # RDW Record descriptor word
    Uint2('rlen'),  # Record length
    Uint1('seg'),  # Segment control
    Uint1('seg2'),  # Segment control 2 (unused)
    byteOrder=NETWORKBO,
)

excl4 = Datamap(
    'EXCL4',
    # 4 Byte Excluded length Record
    Uint4('rlen'),  # Record length
)

# used for writing
wrdw = Datamap(
    'RDW',
    # RDW Record descriptor word
    Uint2('rlen'),  # Record length
    Uint1('seg'),  # Segment control
    Uint1('seg2'),  # Segment control 2 (unused)
    byteOrder=NETWORKBO,
    buffer=Abuf(4),
)

isnp = Datamap(
    'ISN_prefix',
Пример #23
0
  def __init__(self, **kw):
    Datamap.__init__(self, 'CPU accounting section',

    Uint2('pty',caption='Address space dispatching priority'), # from DPRTY parm on EXEC card or APG value in CVTAPG
    Bytes('tfl1',1,caption='Timer Flag1'),
    Bytes('tfl2',1,caption='Timer Flag2'),
    #o todo flag bits

    Uint4('cpt',ppfunc=dtime100,caption='Step CPU time under TCB'),
    # ASCBEJST OR (ACTJTIME + ASSBASST + RQSVECPT  - TCTEJST)
    # only consumption of GCP not zIIPs,zAAPs, includes enclave time

    Uint4('cps',ppfunc=dtime100,caption='Step CPU time under SRB'), # ASCBSRBT OR (SCTSRBT-TCTSRBT)

    Uint4('icu',ppfunc=dtime100,caption='Initiator CPU time under TCB'), # ASCBEJST+TCTITCB
    # Total working CPU time for initiator under the TCB. It includes values of
    # SMF30ICU_Step_Term (time spent in termination of the previous step) and
    # SMF30ICU_Step_Init (time spent in initialization of the current step)

    Uint4('isb',ppfunc=dtime100,caption='Initiator CPU time under SRB'), # ASCBSRBT+TCTISRB
    # Total working CPU time for the initiator under any SRB. It includes values of
    # SMF30ISB_Step_Term (time spent in termination of the previous step) and
    # SMF30ISB_Step_Init (time spent in initialization of the current step)

    Uint4('jvu',ppfunc=dtime100,caption='Step Vector usage time'),
    Uint4('ivu',ppfunc=dtime100,caption='Initiator Vector usage time'),
    Uint4('jva',ppfunc=dtime100,caption='Step Vector affinity time'),
    Uint4('iva',ppfunc=dtime100,caption='Initiator Vector affinity time'),

    Uint4('ist',ppfunc=dtime100,caption='Interval start time'), # for subtype 2,3 records
    Packed('idt',4,ppfunc=idate,caption='Interval start date'), # Date

    Uint4('iip',ppfunc=dtime100,caption='CPU time I/O Interrupts'),       # ASSBIIPT-TCTEIIP
    Uint4('rct',ppfunc=dtime100,caption='CPU time Region Control Task'),  # TCBTIME-TCTERCT

    Uint4('hpt',caption='Step CPU time transfers hiper space and A/S'), # ASSBHST-TCTEHPT
    Uint4('csc',caption='ICSF Crypto service count'), # ASSBFSC-TCTANSC

    Uint4('dmi',caption='ADMF moved pages writes'), # ASSBTPMT-TCTADMFW
    Uint4('dmo',caption='ADMF moved pages reads'), # ASSBTPMA-TCTADMFR

    Uint4('asr',ppfunc=dtime100,caption='Step CPU time preemptable and client SRBs'),  # ASSBASST, value included in cpt
    Uint4('enc',ppfunc=dtime100,caption='Step independent enclave CPU time'), # RQSVECPT, value included in cpt
    Uint4('det',ppfunc=dtime100,caption='Step dependent enclave CPU time'),  # RQSVDET, value included in cpt

    Uint4('cep',caption='CPU time while ENQ promoted'),  # in 1.024 millisec, cumulative even for interval records

    Bytes('tf2',1,caption='Timer Flag2'),
    #o todo
    Bytes('t32',1,caption='Timer Flag32'),
    Bytes('t33',1,caption='Timer Flag33'),
    Bytes('t34',1,opt=T_NONE),

    Uint4('toi',ppfunc=dtime100,caption='Time on IFA'),             # ASSB_Time_On_IFA, includes enclave time
    Uint4('etoi',ppfunc=dtime100,caption='Enclave time on IFA'),    # Rqsv_Enclave_Time_On_IFA
    Uint4('detoi',ppfunc=dtime100,caption='Dependent enclave time on IFA'),  # Rqsv_Dep_Enclave_Time_On_IFA

    Uint4('tic',ppfunc=dtime100,caption='IFA time on CP'),          # ASSB_Time_IFA_ON_CP IFA includes enclave time
    Uint4('etic',ppfunc=dtime100,caption='IFA enclave time on CP'), # Rqsv_Enclave_Time_IFA_ON_CP
    Uint4('detic',ppfunc=dtime100,caption='IFA dependent enclave time on CP'),  # Rqsv_Dep_Enclave_Time_IFA_ON_CP

    Uint4('cepi',caption='CPU time while ENQ promoted'),  # in 1.024 millisec, interval time

    Uint4('toz',ppfunc=dtime100,caption='Time on zIIP'),             # ASSB_Time_On_zIIP Time, includes enclave time
    Uint4('etoz',ppfunc=dtime100,caption='Enclave time on zIIP'),    # Rqsv_Enclave_Time_On_SUP
    Uint4('detoz',ppfunc=dtime100,caption='Dependent enclave time on zIIP'),  # Rqsv_DEPENC_Time_On_SUP

    Uint4('zoc',ppfunc=dtime100,caption='zIIP time on CP'),          # ASSB_Time_zIIP_ON_CP includes enclave time
    Uint4('ezoc',ppfunc=dtime100,caption='Enclave zIIP time on CP'), # Rqsv_Enclave_Time_SUP_ON_CP
    Uint4('dezoc',ppfunc=dtime100,caption='Dependent enclave zIIP time on CP'),  # Rqsv_DEPENC_Time_SUP_ON_CP

    Uint4('etozq',ppfunc=dtime100,caption='Enclave zIIP time on CP normalized'),  # Rqsv_Enclave_TIME_SUP_QUAL
    Uint4('detozq',ppfunc=dtime100,caption='Dependent enclave zIIP time on CP normalized'),  # Rqsv_DepEnc_TIME_SUP_QUAL

    Uint4('crp',caption='CPU time while CRM promoted'),  # in 1.024 millisec, time during interval
    # RqsvCPUtimeConsumedWhileCRMpromoted, CRM - chronic resource contention

    Uint4('icust',ppfunc=dtime100,caption='CPU TCB time for step term'), # included in icu
    Uint4('icusi',ppfunc=dtime100,caption='CPU TCB time for step init'), # included in icu
    Uint4('isbst',ppfunc=dtime100,caption='CPU SRB time for step term'), # included in isb
    Uint4('isbsi',ppfunc=dtime100,caption='CPU SRB time for step init'), # included in isb

    Uint4('mblk',caption='Missed I/O block counting '),      # w/o serialization to counter SMF30BLK, zero for startet tasks
    Uint4('mdct',caption='Missed device connect counting'), # w/o serialization to counter SMF30DCT, zero for started tasks

    Uint2('hit',ppfunc=percent,caption='Highest Task CPU percent'),  # TCB time * 100 / interval time
    String('hip',8,caption='Highest Task Program name'),

    Bytes('flag',1,caption='CPU Accounting flag'),
    Bytes('r0bb',1,opt=T_NONE),

    #dmlen should be == SMF30CASLEN
    byteOrder=NETWORKBO,ebcdic=1,**kw)
Пример #24
0
 def __init__(self, **kw):
     fields = (
         Uint4('error_code'),  # 1 CIS return code (0 = OK)
         Uint4(
             'totobj'),  # 1 Total number of objects returned in object list
         Uint4(
             'curobj'
         ),  # 1 Number of objects returned within current receive block
         Uint4('max_sc_len'),  # 1 longest SERVER-CLASS value in object list
         Uint4('max_sn_len'),  # 1 longest SERVER-NAME value in object list
         Uint4('max_sv_len'),  # 1 longest SERVICE value in object list
         Uint4('max_uid_len'),  # 1 longest USER-ID value in object list
         Uint4('max_tk_len'),  # 1 longest TOKEN value in object list
         Uint4('max_topic_len'),  # 4 longest TOPIC value in object list
         Uint4('requesttime', ppfunc=localtime_str
               ),  # 4 time that request was received by broker kernel
         Uint4('reserved', opt=T_NONE),  # 4
         String('etb_error_code',
                8),  # 5 Secondary error code from broker kernel
         String('etb_error_text',
                40),  # 5 Secondary error text from broker kernel
         Uint4('max_ppc_lib_len'),  # 6 longest RPC-LIB value in object list
         Uint4('max_ppc_pgm_len'),  # 6 longest RPC-PGM value in object list
     )
     Datamap.__init__(self, 'Cishdr', *fields, **kw)
Пример #25
0
    def __init__(self,  clientserver, **kw):
        fields=(                            # Available with CIS Interface version
        String('uid', 32),                  # 1 UserID
        #Bytes('puid', 28),                  #   Physical UserID
        String('puid', 28),                 #   Physical UserID
        String('puidTrans',28,opt=T_NONE),  #   Translated physical UserID
        String('token', 32),                #   User's Token
        Uint2('charset'),                   #   User's character set: *****
                                            #     EBCDIC_IBM .....  34 ('22')
                                            #     EBCDIC_SNI .....  66 ('42')
                                            #     ASCII_PC_386 ...   1 ('01')
                                            #     ASCII_PC_OS2 ...  16 ('10')
                                            #     ASCII_8859_1 ... 128 ('80')
        Uint2('highorderfirst'),            #   Big Endian = 1
        Uint2('status',ppfunc=waiting_str), #   User's status: 0: not waiting, 5: waiting
        Uint2('unused1',opt=T_NONE),        #   Alignment
        String('waitconvid', 16),           #   CONVID user is waiting for:
                                            #     "NEW"|"OLD"|"ANY"|"NONE"|n
        String('server_class', 32,opt=T_NONE),# User waiting for this ....
        String('server', 32,opt=T_NONE),    #
        String('service',32,
            ppfunc=lambda svc:'%s/%s/%s' % (self.server_class,self.server,svc)),
                                            # SERVICE = class/server/service

        Uint4('conv_act'),                  #   Active conversations of this user
        Uint4('service_act'),               #   Active services by server
        Uint4('last_active',ppfunc=intervalstr),#   Seconds since last activity
        Uint4('nonact',ppfunc=intervalstr), #   Nonactivity timeout
        Uint4('waited_new',ppfunc=intervalstr), #   Accum.wait time CONVID=NEW
        Uint4('waits_new'),                 #   Number of waits CONVID=NEW
        Uint4('waited_old',ppfunc=intervalstr), #   Accum.wait time CONVID!=NEW
        Uint4('waits_old'),                 #   Number of waits CONVID!=NEW
        Uint4('convs'),                     # 1 No. of conversations
        Uint4('active_uow'),                # 2 Total number of active UOWs
        String('ipv4_address',16),          # 4 IPv4 address client/server
        String('host_name',256),            #   Host name client/server
        Uint1('recv_option',ppfunc=option_str), #   RECEIVE option
        Uint1('attach_mgr'),                #   Attach manager
        Uint2('unused2',opt=T_NONE),        # 4 Alignment
        String('reserved_etbinfo_v73_1',32,opt=T_NONE),# 5 Reserved for future use
        String('app_name',64),              # 5
        String('app_type',8),               # 5
        String('reserved_etbinfo_v73_3',32,opt=T_NONE),# 5 Reserved for future use
        Uint4('authsucc'),                  # 5 Counter AUTHORIZ succeeded
        Uint4('authfail'),                  # 5 Counter AUTHORIZ failed
        Uint4('created',ppfunc=localtime_str),    # 5 Creation time
        String('rpclib',128),               # 6 ACI RPCLIB
        String('rpcpgm',128),               # 6 ACI RPCPGM
        Uint4('seqno'),                     # 7 unique client/server sequence number
        String('app_version',16),           # 7
        String('ipv6_address',46),          # 8 IPv6 address client/server
        String('unused',2,opt=T_NONE),      # 8 Alignment
        )
        Datamap.__init__(self, clientserver, *fields, **kw)
Пример #26
0
    def __init__(self, **kw):
        fields=(                            # Available with CIS Interface version
                                            # 1
        String('server_class', 32,opt=T_NONE),# SERVER-CLASS
        String('server', 32,opt=T_NONE),    #   SERVER-NAME
        String('service',32,
            ppfunc=lambda x:'%s/%s/%s' % (self.server_class,self.server,self.service)),
                                            # SERVICE = class/server/service

        String('translate', 8),             #    Name of translation routine
        Uint4('conv_nonact',ppfunc=intervalstr),#    Conversation timeout
        Uint4('servers_act'),               #    Active servers
        Uint4('conv_act'),                  #    Active conversations
        Uint4('conv_high'),                 #    High watermark
        Uint4('longbuffer_act'),            #    Active LONG-BUFFER entries
        Uint4('longbuffer_high'),           #    High watermark
        Uint4('shortbuffer_act'),           #    Active SHORT-BUFFER entries
        Uint4('shortbuffer_high'),          #    High watermark
        Uint4('waitserver'),                #    No. waits for server MSGs
        Uint4('server_occupied'),           #    No. times all servers busy
        Uint4('pending'),                   #    No. pending conversations
        Uint4('pending_high'),              #    High watermark
        Uint4('total_requests'),            # 1  Total number of requests
        Uint4('maxuows'),                   # 2  Max # of active UOWs
        Uint4('maxuowmsg'),                 #    Max # of messages per UOW
        Uint4('uwtime',ppfunc=intervalstr), #    Max UOW life time
        Uint4('maxdelcnt'),                 #    Max delivery count
        Uint4('maxmsgsize'),                #    Max message size
        Uint4('totaluows'),                 #    Total number of active UOWs
        Uint1('store'),                     #    Startup value STORE: 0: off, 1: Broker
        Uint1('uwstatp'),                   #    uowStatusLifetime Multiplier
        Uint1('deferred'),                  # 2  default status for UOW  0: no, 1: yes
        Uint1('enclevel'),                  # 3  Encryption Level
        Uint4('attachmgrs_act'),            # 4  No. active attach managers
        Uint4('uwstat_addtime'),            # 4  UWSTAT-LIFETIME
        Uint4('num_conv'),                  # 5  No. conversations
        Uint4('num_server'),                #    No. servers
        Uint4('longbuffers'),               #    No. long message buffers
        Uint4('shortbuffers'),              #    No. short message buffers
        String('conversion',8),             #    Name of conversion routine
        String('conversion_parms',255),     #    Conversion parameters
        String('unused1', 5, opt=T_NONE),   # 5 alignment
        )
        Datamap.__init__(self, 'Service', *fields, **kw)
Пример #27
0
    def __init__(self, **kw):
        fields=(                            # Available with CIS Interface version
        String('platform',8),
        Uint4('runtime',ppfunc=intervalstr),  #stckintervalstr if stck seconds
        Uint4('num_worker_act'),
        Uint4('num_long'),
        Uint4('long_act'),
        Uint4('long_high'),
        Uint4('num_short'),
        Uint4('short_act'),
        Uint4('short_high'),
        Uint4('long_size'),
        Uint4('short_size'),
        Uint4('num_service'),
        Uint4('service_act'),
        Uint4('num_server'),
        Uint4('server_act'),
        Uint4('server_high'),
        Uint4('num_client'),
        Uint4('client_act'),
        Uint4('client_high'),
        Uint4('num_conv'),
        Uint4('conv_high'),
        Uint2('trace_level'),
        Uint2('unused1',opt=T_NONE),            # 1

        Uint4('maxuows'),
        Uint4('maxuowmsg'),
        Uint4('uwtime',ppfunc=intervalstr),
        Uint4('maxdelcnt'),
        Uint4('maxmsgsize'),
        Uint4('totaluows'),
        Uint1('store'),
        Uint1('pstore',ppfunc=pstore_str),
        Uint1('uwstatp'),
        Uint1('deferred'),                  # 2

        String('accounting', 3),            # 3
        Uint1('authdefault'),
        Uint4('sslport'),
        Uint1('new_uow_msgs'),
        Uint1('snmp_licensed'),
        Uint2('unused2',opt=T_NONE),
        String('platformname',32),
        String('pstoretype',8),             # 3

        Uint1('pub_sub'),                   # 4
        Uint1('apiversion'),
        Uint1('cisversion'),
        Uint1('pstore_connected'),
        Uint4('num_topic'),
        Uint4('topic_act'),
        Uint4('num_subscriber'),
        Uint4('subscriber_act'),
        Uint4('subscriber_high'),
        Uint4('num_publisher'),
        Uint4('publisher_act'),
        Uint4('publisher_high'),
        Uint4('num_publication'),
        Uint4('publication_high'),
        Uint4('attach_mgrs_act'),
        Uint4('uwstat_add_time'),
        String('product_version',16),       # 4

        String('license_expiration',10),    # 5
        Uint1('security_type'),
        Uint1('accounting_enabled'),
        Uint4('num_free_ccb'),
        Uint4('num_free_pcb'),
        Uint4('num_free_pcb_ext'),
        Uint4('num_free_scb'),
        Uint4('num_free_scb_ext'),
        Uint4('num_free_subscb'),
        Uint4('num_free_tcb'),
        Uint4('num_free_tcb_ext'),
        Uint4('num_free_toq'),
        Uint4('num_free_uwcb'),
        Uint4('num_com_buffer'),
        Uint4('num_com_slot'),
        Uint4('num_com_slot_free'),
        Uint4('num_cmdlog_filter'),
        Uint4('num_cmdlog_filter_act'),
        Uint1('cmdlog'),
        Uint1('cmdlog_enabled'),
        String('unused3',2,opt=T_NONE),
        String('attribute_file_name',256),
        String('log_file_name',256),
        Uint4('log_file_size'),
        String('license_file_name',256),
        Uint4('cmdlog_size_max'),
        String('cmdlog_open_name',256),
        Uint4('cmdlog_open_size'),
        String('cmdlog_closed_name',256),
        Uint4('cmdlog_closed_size'),
        Uint4('unused4',opt=T_NONE),
        String('accounting_file_name',256),
        Uint4('accounting_file_size'),
        Uint4('control_interval'),
        Uint4('max_takeover_attempts'),
        String('run_mode',16),
        String('partner_cluster_addr',32),
        Uint4('num_cmdlog_switch_siz'),
        Uint4('num_cmdlog_switch_cis'),         # 5/6

        Uint4('client_nonact',ppfunc=intervalstr),
        Uint4('work_queue_entries'),
        Uint4('total_storage_alloc'),
        Uint4('total_storage_high'),
        Uint4('total_storage_limit'),
        String('broker_id',32),
        String('host_name',256),
        String('sysplex_name',8),
        Uint1('auto_logon'),
        Uint1('dyn_memory_management'),
        Uint1('dyn_worker_management'),
        Uint1('service_updates'),
        Uint1('topic_updates'),
        Uint1('transport_net'),
        Uint1('transport_ssl'),
        Uint1('transport_tcp'),
        Uint4('trap_error'),                    # 7/8
        )
        Datamap.__init__(self, 'Broker', *fields, **kw)
Пример #28
0
    def __init__(self, **kw):
        Datamap.__init__(self, 'SMF30 Acccounting Information Record',
    Int2('rlen'), # Record length        RDW header
    Uint1('seg'), # Segment control
    Uint1('seg2'), # Segment control 2 (unused)

    Bytes('flg',1,caption='System indicator'), # System indicator flags
    Uint1('rty',caption='SMF record type'),  # SMF record type

    Uint4('tme',ppfunc=dtime100,caption='Record creation time'), # Time since midnight
                                  # when record was moved into smf buffer in 1/100 sec

    Packed('dte',4,ppfunc=idate,caption='Record creation date'), # Date when record was
                                  # moved into smf buffer as 0cyydddf

    String('sid',4,caption='System identifier'), # smfprmxx sid
    String('ssi',4,caption='Subsystem identifier'),
    Uint2('sty',caption='Subtype'), # Subtype  ppfunc=Asbase.assty_str
    #q Asbasel  equ   *-asbase            length of standard header

    # Self-defining section offset 0x14 w/o RDW
    # Bytes('sds',152,opt=T_NONE,caption='Self defining section'), # too short

    # Subsystem section
    # following offsets number are + 4 because our record is w/o RDW
    Uint4('sof'),  # Offset to section from record start + 4
    Uint2('sln'),  # Length of subsystem section
    Uint2('son'),  # Number of subsystem section(s)

    # Identification section (always present)
    Uint4('iof'),  # Offset to id section from record start + 4
    Uint2('iln'),  # Length of id section
    Uint2('ion'),  # Number of id section(s)

    # I/O activity section
    Uint4('uof'),  # Offset to section from record start + 4
    Uint2('uln'),  # Length of section
    Uint2('uon'),  # Number of sections

    # Completion section
    Uint4('tof'),  # Offset to section from record start + 4
    Uint2('tln'),  # Length of section
    Uint2('ton'),  # Number of sections

    # Processor section
    Uint4('cof'),  # Offset to section from record start + 4
    Uint2('cln'),  # Length of section
    Uint2('con'),  # Number of sections

    # Accouting section
    Uint4('aof'),  # Offset to section from record start + 4
    Uint2('aln'),  # Length of section
    Uint2('aon'),  # Number of sections

    # Storage section
    Uint4('rof'),  # Offset to section from record start + 4
    Uint2('rln'),  # Length of section
    Uint2('ron'),  # Number of sections

    # Performance section
    Uint4('pof'),  # Offset to section from record start + 4
    Uint2('pln'),  # Length of section
    Uint2('pon'),  # Number of sections

    # Operator section
    Uint4('oof'),  # Offset to section from record start + 4
    Uint2('oln'),  # Length of section
    Uint2('oon'),  # Number of sections

    # EXCP section
    Uint4('eof'),  # Offset to section from record start + 4
    Uint2('eln'),  # Length of section
    Uint2('eon'),  # Number of sections

    Uint2('eor'),  # Number of segments in subsequent records (might be invalid)
    Uint2('rvd'),  # reserved
    Uint4('eos'),  # Number of segments in subsequent records (fullword)

    # APPC/MVS section
    Uint4('dro'),  # Offset to section from record start + 4
    Uint2('drl'),  # Length of section
    Uint2('drn'),  # Number of sections

    # APPC/MVS section cumulative
    Uint4('aro'),  # Offset to section from record start + 4
    Uint2('arl'),  # Length of section
    Uint2('arn'),  # Number of sections

    # OpenMVS section
    Uint4('opo'),  # Offset to section from record start + 4
    Uint2('opl'),  # Length of section
    Uint2('opn'),  # Number of sections
    Uint4('opm'),  # Number of sections in subsequent records

    # Usage section
    Uint4('udo'),  # Offset to section from record start + 4
    Uint2('udl'),  # Length of section
    Uint2('uds'),  # Number of sections

    # First ARM section
    Uint4('rmo'),  # Offset to section from record start + 4
    Uint2('rml'),  # Length of section
    Uint2('rmn'),  # Number of sections
    Uint4('rms'),  # Number of sections in subsequent records

    # MultiSystem Enclave Remote System Data section
    Uint4('mof'),  # Offset to section from record start + 4
    Uint2('mln'),  # Length of section
    Uint2('mno'),  # Number of sections
    Uint4('mos'),  # Number of sections in subsequent records

    # Counter Data section
    Uint4('cdo'),  # Offset to section from record start + 4
    Uint2('cdl'),  # Length of section
    Uint2('cdn'),  # Number of sections

    # zEDC usage statistics section
    Uint4('uso'),  # Offset to section from record start + 4
    Uint2('usl'),  # Length of section
    Uint2('usn'),  # Number of sections
    byteOrder=NETWORKBO,ebcdic=1,**kw)
Пример #29
0
S_USER_ID = 32
S_USRDATA = 16
S_VERS = 8
S_WAIT = 8
S_BROKER_URL = 512

ETB_CODEPAGE_USE_PLATFORM_DEFAULT = "LOCAL"

# EntireX Broker control block
etbcbfields = (
    Uint1('api_type', opt=T_IN),
    Uint1('api_version', opt=T_IN),
    Uint1('function', opt=T_IN),
    Uint1('option', opt=T_IN),
    Filler('reserved1', 16),
    Uint4('send_length', opt=T_IN),
    Uint4('receive_length', opt=T_IN),  # maximum receive length
    Uint4('return_length', opt=T_OUT),  # length of returned data
    Uint4('errtext_length', opt=T_IN),  # error text buffer len
    String('broker_id', 32, opt=T_IN),

    # service name
    String('server_class', 32),
    String('server_name', 32),
    String('service', 32),
    String('user_id', 32, opt=T_IN),
    String('password', 32, opt=T_IN),  # may contain binary data
    String('token', 32, opt=T_IN),
    Bytes('security_token', 32),
    String('conv_id', 16),  #0x124 conversational/non.
    String('wait', 8, opt=T_IN),  #blocked/non-blocked, time in sec