aboutsummaryrefslogtreecommitdiff
path: root/acse/acse.go
blob: 8429b833ce9fe492f9a39386c8ce5a2da9aee94b (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package acse

// 2.2.0.0.1

type ObjectIdentifier []int // asn1.ObjectIdentifier

// A-ASSOCIATE Request
// Application Constructed implicit 0
type AARQ struct {
	ProtocolVersion        Version          // 0 implicit BitString
	ApplicationContextName ObjectIdentifier // 1
	UserInformation        interface{}      // 30 implicit
}

type Version byte

const (
	Version1 Version = iota
)

// A-ASSOCIATE Result (Result == 0)
// A-REJECT (Result == 1)
// Application Constructed implicit 1
type AARE struct {
	ProtocolVersion        Version          // 0 implicit BitString
	ApplicationContextName ObjectIdentifier // 1
	Result                 Result           // 2
	ResultSourceDiagnostic AcseServiceUser  // 3
	UserInformation        interface{}      // 30 implicit
}

type Result int

const (
	Accepted Result = iota
	RejectedPermanent
)

type AcseServiceUser int

const (
	Null AcseServiceUser = iota
	NoReasonGiven
)

// A-RELEASE Request
// Application Constructed implicit 2
type RLRQ struct{}

// A-RELEASE Result
// Application Constructed implicit 3
type RLRE struct{}

// A-ABORT
// Application Constructed implicit 4
type ABRT struct {
	AbortSource AbortSource // 0 implicit
}

type AbortSource int

const (
	ServiceUser AbortSource = iota
	ServiceProvider
)