summaryrefslogtreecommitdiffstats
path: root/lib/dns/spnego.asn1
blob: abf9b76bba3101f18325c41438980174708aa7ed (plain)
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
-- Copyright (C) The Internet Society 2005.  This version of
-- this module is part of RFC 4178; see the RFC itself for
-- full legal notices.

-- (The above copyright notice is per RFC 3978 5.6 (a), q.v.)

-- This is the SPNEGO ASN.1 module from RFC 4178, tweaked
-- to get the Heimdal ASN.1 compiler to accept it.

SPNEGOASNOneSpec DEFINITIONS ::= BEGIN

MechType ::= OBJECT IDENTIFIER

MechTypeList ::= SEQUENCE OF MechType

ContextFlags ::= BIT STRING {
    delegFlag       (0),
    mutualFlag      (1),
    replayFlag      (2),
    sequenceFlag    (3),
    anonFlag        (4),
    confFlag        (5),
    integFlag       (6)
}

NegTokenInit ::= SEQUENCE {
    mechTypes       [0] MechTypeList,
    reqFlags        [1] ContextFlags  OPTIONAL,
    mechToken       [2] OCTET STRING  OPTIONAL,
    mechListMIC     [3] OCTET STRING  OPTIONAL
}

NegTokenResp ::= SEQUENCE {
    negState       [0] ENUMERATED {
	accept-completed    (0),
	accept-incomplete   (1),
	reject              (2),
	request-mic         (3)
    }                                 OPTIONAL,
    supportedMech   [1] MechType      OPTIONAL,
    responseToken   [2] OCTET STRING  OPTIONAL,
    mechListMIC     [3] OCTET STRING  OPTIONAL
}

NegotiationToken ::= CHOICE {
    negTokenInit    [0] NegTokenInit,
    negTokenResp    [1] NegTokenResp
}

END