File: cython_types.pxd

package info (click to toggle)
python-gssapi 1.10.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 876 kB
  • sloc: python: 3,707; sh: 198; makefile: 154; ansic: 60
file content (137 lines) | stat: -rw-r--r-- 4,186 bytes parent folder | download | duplicates (3)
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
from libc.stdint cimport uint32_t


cdef extern from "python_gssapi.h":
    # basic types
    ctypedef uint32_t OM_uint32

    # int type aliases
    ctypedef int gss_cred_usage_t
    ctypedef OM_uint32 gss_qop_t

    # struct types
    ctypedef struct gss_OID_desc:
        OM_uint32 length
        void *elements
    ctypedef gss_OID_desc* gss_OID

    ctypedef struct gss_OID_set_desc:
        size_t count
        gss_OID elements
    ctypedef gss_OID_set_desc* gss_OID_set

    ctypedef struct gss_buffer_desc:
        size_t length
        char *value
    ctypedef gss_buffer_desc* gss_buffer_t

    cdef struct gss_name_struct:
        pass
    ctypedef gss_name_struct* gss_name_t

    cdef struct gss_cred_id_struct:
        pass
    ctypedef gss_cred_id_struct* gss_cred_id_t

    cdef struct gss_ctx_id_struct:
        pass
    ctypedef gss_ctx_id_struct* gss_ctx_id_t

    ctypedef struct gss_channel_bindings_struct:
        OM_uint32 initiator_addrtype
        gss_buffer_desc initiator_address
        OM_uint32 acceptor_addrtype
        gss_buffer_desc acceptor_address
        gss_buffer_desc application_data
    ctypedef gss_channel_bindings_struct* gss_channel_bindings_t

    # util methods
    OM_uint32 gss_release_buffer(OM_uint32 *min_stat, gss_buffer_t buff)
    OM_uint32 gss_create_empty_oid_set(OM_uint32 *min_stat,
                                       gss_OID_set *target_set)
    OM_uint32 gss_release_oid_set(OM_uint32 *min_stat,
                                  gss_OID_set *target_set)
    OM_uint32 gss_add_oid_set_member(OM_uint32 *min_stat,
                                     const gss_OID member,
                                     gss_OID_set *target_set)
    OM_uint32 gss_test_oid_set_member(OM_uint32 *min_stat,
                                      const gss_OID member,
                                      const gss_OID_set target_set,
                                      int *present)

    # misc int constants
    # status code types
    int GSS_C_GSS_CODE
    int GSS_C_MECH_CODE
    # status code constants
    OM_uint32 GSS_S_COMPLETE
    OM_uint32 GSS_S_CONTINUE_NEEDED
    OM_uint32 GSS_S_DUPLICATE_TOKEN

    # cred_usage constants
    gss_cred_usage_t GSS_C_BOTH
    gss_cred_usage_t GSS_C_INITIATE
    gss_cred_usage_t GSS_C_ACCEPT

    # null/default constants
    gss_OID GSS_C_NO_OID
    # NB(sross): because of how Cython creates variables, this is useless
    # gss_buffer_desc GSS_C_EMPTY_BUFFER
    gss_name_t GSS_C_NO_NAME
    OM_uint32 GSS_C_INDEFINITE
    gss_buffer_t GSS_C_NO_BUFFER
    gss_OID_set GSS_C_NO_OID_SET
    gss_channel_bindings_t GSS_C_NO_CHANNEL_BINDINGS
    gss_qop_t GSS_C_QOP_DEFAULT
    gss_ctx_id_t GSS_C_NO_CONTEXT
    gss_cred_id_t GSS_C_NO_CREDENTIAL

    # OID constants
    # OID name types
    gss_OID GSS_C_NT_HOSTBASED_SERVICE
    gss_OID GSS_C_NT_USER_NAME
    gss_OID GSS_C_NT_ANONYMOUS
    gss_OID GSS_C_NT_MACHINE_UID_NAME
    gss_OID GSS_C_NT_STRING_UID_NAME
    gss_OID GSS_C_NT_EXPORT_NAME

    # flag constants
    OM_uint32 GSS_C_DELEG_FLAG
    OM_uint32 GSS_C_MUTUAL_FLAG
    OM_uint32 GSS_C_REPLAY_FLAG
    OM_uint32 GSS_C_SEQUENCE_FLAG
    OM_uint32 GSS_C_CONF_FLAG
    OM_uint32 GSS_C_INTEG_FLAG
    OM_uint32 GSS_C_ANON_FLAG
    OM_uint32 GSS_C_TRANS_FLAG
    OM_uint32 GSS_C_PROT_READY_FLAG
    OM_uint32 GSS_C_DELEG_POLICY_FLAG

    # address types
    OM_uint32 GSS_C_AF_UNSPEC
    OM_uint32 GSS_C_AF_LOCAL
    OM_uint32 GSS_C_AF_INET
    OM_uint32 GSS_C_AF_IMPLINK
    OM_uint32 GSS_C_AF_PUP
    OM_uint32 GSS_C_AF_CHAOS
    OM_uint32 GSS_C_AF_NS
    OM_uint32 GSS_C_AF_NBS
    OM_uint32 GSS_C_AF_ECMA
    OM_uint32 GSS_C_AF_DATAKIT
    OM_uint32 GSS_C_AF_CCITT
    OM_uint32 GSS_C_AF_SNA
    OM_uint32 GSS_C_AF_DECnet
    OM_uint32 GSS_C_AF_DLI
    OM_uint32 GSS_C_AF_LAT
    OM_uint32 GSS_C_AF_HYLINK
    OM_uint32 GSS_C_AF_APPLETALK
    OM_uint32 GSS_C_AF_BSC
    OM_uint32 GSS_C_AF_DSS
    OM_uint32 GSS_C_AF_OSI
    OM_uint32 GSS_C_AF_X25
    OM_uint32 GSS_C_AF_NULLADDR

    # error helpers
    OM_uint32 GSS_CALLING_ERROR(OM_uint32 full_error)
    OM_uint32 GSS_ROUTINE_ERROR(OM_uint32 full_error)
    OM_uint32 GSS_SUPPLEMENTARY_INFO(OM_uint32 full_error)