This file is indexed.

/usr/share/yaz/z39.50/esupdate.asn is in libyaz4-dev 4.2.18-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
ESFormat-Update
{Z39-50-extendedService Update (5) revisions (1)  revision-1 (1)} DEFINITIONS ::=
  -- oid is 1.2.840.10003.9.5.1.1
BEGIN
IMPORTS DiagRec, InternationalString
FROM Z39-50-APDU-1995;
Update ::= CHOICE{
    esRequest      [1] IMPLICIT SEQUENCE{
       toKeep         [1] OriginPartToKeep,
       notToKeep      [2] OriginPartNotToKeep},
    taskPackage    [2] IMPLICIT SEQUENCE{
                       originPart     [1]
                                   OriginPartToKeep,
                       targetPart     [2] TargetPart}}

OriginPartToKeep ::= SEQUENCE{
action                  [1] IMPLICIT INTEGER{
                                recordInsert    (1),
                                recordReplace   (2),
                                recordDelete    (3),
                                elementUpdate   (4),
                                specialUpdate   (5)},
 databaseName           [2] IMPLICIT InternationalString,
 schema                 [3] IMPLICIT OBJECT IDENTIFIER OPTIONAL,
 elementSetName         [4] IMPLICIT InternationalString OPTIONAL,
 actionQualifier        [5] IMPLICIT EXTERNAL OPTIONAL}

OriginPartNotToKeep ::= SuppliedRecords

TargetPart ::= SEQUENCE{
  updateStatus        [1] IMPLICIT INTEGER{
                          success (1),
                          partial (2),
                          failure (3)},
  globalDiagnostics   [2] IMPLICIT SEQUENCE OF
                              DiagRec OPTIONAL,
                    -- These are non-surrogate
                    -- diagnosticsrelating to the task,
                    -- not to individual records.
  taskPackageRecords  [3] IMPLICIT SEQUENCE OF
TaskPackageRecordStructure
                    -- There should be a
                    -- TaskPackageRecordStructure
                    -- for every record supplied.
                    -- The target should create
                    -- such a structure for every
                    -- record immediately upon
                    -- creating the task package
                    -- to include correlation
                    -- information and status.
                    -- The record itself would not
                    -- be included until processing
                    -- for that record is complete.
               }

-- Auxiliary definitions for Update
SuppliedRecords ::= SEQUENCE OF SEQUENCE{
  recordId     [1] CHOICE{
                number  [1] IMPLICIT INTEGER,
                string  [2] IMPLICIT  InternationalString,
                opaque  [3] IMPLICIT OCTET STRING} OPTIONAL,
  supplementalId [2] CHOICE{
                 timeStamp       [1] IMPLICIT  GeneralizedTime,
                 versionNumber   [2] IMPLICIT InternationalString,
                 previousVersion [3] IMPLICIT EXTERNAL} OPTIONAL,
  correlationInfo   [3] IMPLICIT CorrelationInfo OPTIONAL,
  record            [4] IMPLICIT EXTERNAL}

CorrelationInfo ::= SEQUENCE{
            -- origin may supply one or both for any record:
  note [1] IMPLICIT InternationalString OPTIONAL,
  id   [2] IMPLICIT INTEGER OPTIONAL}

TaskPackageRecordStructure ::= SEQUENCE{
     recordOrSurDiag  [1] CHOICE {
                    record     [1] IMPLICIT EXTERNAL,
                      -- Choose 'record' if
                      -- recordStatus is 'success', and
                      -- elementSetName was supplied.

                  surrogateDiagnostics   [2] IMPLICIT
                              SEQUENCE OF DiagRec
                         -- Choose 'SurrogateDiagnostics', if
                         -- RecordStatus is failure.
                                } OPTIONAL,
                -- The parameter recordOrSurDiag
                    -- will thus be omitted only if
                    -- 'elementSetName' was omitted and
                    -- recordStatus is 'success'; or
                    --if record status is 'queued'
                    -- or in 'process'.
     correlationInfo [2] IMPLICIT
                         CorrelationInfo OPTIONAL,
                    -- This should be included
                    -- if it was supplied by the origin.
     recordStatus    [3] IMPLICIT INTEGER{
                                        success   (1),
                                        queued    (2),
                                        inProcess (3),
                                        failure   (4)},
      supplementalDiagnostics   [4] IMPLICIT
                SEQUENCE OF DiagRec OPTIONAL}
END