File Coverage

TacacsPlus.xs
Criterion Covered Total %
statement 0 45 0.0
branch 0 12 0.0
condition n/a
subroutine n/a
pod n/a
total 0 57 0.0


line stmt bran cond sub pod time code
1             #ifdef __cplusplus
2             extern "C" {
3             #endif
4             #include "EXTERN.h"
5             #include "perl.h"
6             #include "XSUB.h"
7             #ifdef __cplusplus
8             }
9             #endif
10              
11             #include
12             #include "tacpluslib/tacplus_client.h"
13             #include "tacpluslib/tac_plus.h"
14              
15             static int
16 0           not_here(s)
17             char *s;
18             {
19 0           croak("%s not implemented on this architecture", s);
20             return -1;
21             }
22              
23             static double
24 0           constant(name, arg)
25             char *name;
26             int arg;
27             {
28 0           errno = 0;
29 0           switch (*name) {
30             case 'A':
31 0           break;
32             case 'B':
33 0           break;
34             case 'C':
35 0           break;
36             case 'D':
37 0           break;
38             case 'E':
39 0           break;
40             case 'F':
41 0           break;
42             case 'G':
43 0           break;
44             case 'H':
45 0           break;
46             case 'I':
47 0           break;
48             case 'J':
49 0           break;
50             case 'K':
51 0           break;
52             case 'L':
53 0           break;
54             case 'M':
55 0           break;
56             case 'N':
57 0           break;
58             case 'O':
59 0           break;
60             case 'P':
61 0           break;
62             case 'Q':
63 0           break;
64             case 'R':
65 0           break;
66             case 'S':
67 0           break;
68             case 'T':
69 0 0         if (strEQ(name, "TAC_PLUS_AUTHEN_TYPE_ASCII"))
70 0           return TAC_PLUS_AUTHEN_TYPE_ASCII;
71 0 0         else if (strEQ(name, "TAC_PLUS_AUTHEN_TYPE_PAP"))
72 0           return TAC_PLUS_AUTHEN_TYPE_PAP;
73 0 0         else if (strEQ(name, "TAC_PLUS_AUTHEN_TYPE_CHAP"))
74 0           return TAC_PLUS_AUTHEN_TYPE_CHAP;
75 0 0         else if (strEQ(name, "TAC_PLUS_AUTHEN_TYPE_ARAP"))
76 0           return TAC_PLUS_AUTHEN_TYPE_ARAP;
77 0           break;
78             case 'U':
79 0           break;
80             case 'V':
81 0           break;
82             case 'W':
83 0           break;
84             case 'X':
85 0           break;
86             case 'Y':
87 0           break;
88             case 'Z':
89 0           break;
90             }
91 0           errno = EINVAL;
92 0           return 0;
93              
94             //not_there:
95             // errno = ENOENT;
96             // return 0;
97             }
98              
99              
100             MODULE = Authen::TacacsPlus PACKAGE = Authen::TacacsPlus
101              
102              
103             double
104             constant(name,arg)
105             char * name
106             int arg
107              
108              
109             int
110             init_tac_session (host_name,port_name,key,timeout)
111             char* host_name
112             char* port_name
113             char* key
114             int timeout
115             OUTPUT:
116             RETVAL
117              
118             int
119             make_auth (username, password, authen_type)
120             char* username
121             char* password
122             int authen_type
123             CODE:
124             STRLEN user_len;
125             STRLEN password_len;
126 0 0         username = (char *)SvPV(ST(0),user_len);
127 0 0         password = (char *)SvPV(ST(1),password_len);
128 0           RETVAL = make_auth(username, user_len,
129             password, password_len,
130             authen_type);
131             OUTPUT:
132             RETVAL
133              
134             void
135             deinit_tac_session()
136              
137              
138             char *
139             errmsg()
140             CODE:
141 0           RETVAL = tac_err;
142             OUTPUT:
143             RETVAL
144