Linux midolikit.vps 3.10.0-1160.118.1.el7.x86_64 #1 SMP Wed Apr 24 16:01:50 UTC 2024 x86_64
Apache/2
Server IP : 103.97.127.53 & Your IP : 216.73.216.191
Domains :
Cant Read [ /etc/named.conf ]
User : web259
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
include /
Delete
Unzip
Name
Size
Permission
Date
Action
apache
[ DIR ]
drwxr-xr-x
2024-05-02 08:49
arpa
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
asm
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
asm-generic
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
bits
[ DIR ]
drwxr-xr-x
2024-05-02 09:25
c++
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
curl
[ DIR ]
drwxr-xr-x
2024-05-02 07:55
dovecot
[ DIR ]
drwxr-xr-x
2024-05-02 09:45
drm
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
et
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
gdbm
[ DIR ]
drwxr-xr-x
2018-06-02 11:24
gnu
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
gssapi
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
gssrpc
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
jemalloc
[ DIR ]
drwxr-xr-x
2025-05-15 11:09
kadm5
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
krb5
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
libdb
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
linux
[ DIR ]
drwxr-xr-x
2024-05-02 09:25
misc
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
mtd
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
mysql
[ DIR ]
drwxr-xr-x
2025-05-15 11:09
net
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netash
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netatalk
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netax25
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
neteconet
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netinet
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netipx
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netiucv
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netpacket
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netrom
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
netrose
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
nfs
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
openssl
[ DIR ]
drwxr-xr-x
2024-05-02 07:55
protocols
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
python2.7
[ DIR ]
drwxr-xr-x
2024-05-02 07:48
python3.6m
[ DIR ]
drwxr-xr-x
2024-05-02 08:53
rdma
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
rpc
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
rpcsvc
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
sasl
[ DIR ]
drwxr-xr-x
2024-05-02 07:55
scsi
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
selinux
[ DIR ]
drwxr-xr-x
2024-05-02 07:50
sepol
[ DIR ]
drwxr-xr-x
2019-04-19 09:21
sodium
[ DIR ]
drwxr-xr-x
2024-05-02 08:51
sound
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
spf2
[ DIR ]
drwxr-xr-x
2024-05-02 09:30
sys
[ DIR ]
drwxr-xr-x
2024-05-02 07:57
systemd
[ DIR ]
drwxr-xr-x
2024-05-02 07:55
uapi
[ DIR ]
drwxr-xr-x
2024-04-24 16:13
uv
[ DIR ]
drwxr-xr-x
2024-05-02 08:53
video
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
webp
[ DIR ]
drwxr-xr-x
2024-05-02 08:54
xen
[ DIR ]
drwxr-xr-x
2024-05-02 07:53
FlexLexer.h
6.07
KB
-rw-r--r--
2018-10-30 20:30
_G_config.h
1.26
KB
-rw-r--r--
2022-05-18 15:56
a.out.h
4.25
KB
-rw-r--r--
2022-05-18 15:56
aio.h
7.27
KB
-rw-r--r--
2022-05-18 15:57
aliases.h
2
KB
-rw-r--r--
2022-05-18 15:57
alloca.h
1.19
KB
-rw-r--r--
2022-05-18 15:56
ar.h
1.68
KB
-rw-r--r--
2022-05-18 15:56
argp.h
24.75
KB
-rw-r--r--
2022-05-18 15:57
argz.h
6.96
KB
-rw-r--r--
2022-05-18 15:56
assert.h
3.52
KB
-rw-r--r--
2022-05-18 15:56
byteswap.h
1.41
KB
-rw-r--r--
2022-05-18 15:56
bzlib.h
6.1
KB
-rw-r--r--
2010-09-10 23:08
com_err.h
2.07
KB
-rw-r--r--
2012-07-06 13:37
complex.h
3.62
KB
-rw-r--r--
2022-05-18 15:56
cpio.h
2.21
KB
-rw-r--r--
2022-05-18 15:56
cpufreq.h
5.8
KB
-rw-r--r--
2024-04-24 16:13
crypt.h
2.22
KB
-rw-r--r--
2022-05-18 15:57
ctype.h
11.52
KB
-rw-r--r--
2022-05-18 15:56
db.h
120.21
KB
-r--r--r--
2019-08-09 00:16
db_185.h
5.84
KB
-r--r--r--
2019-08-09 00:16
dbm.h
1.37
KB
-rw-r--r--
2014-06-09 21:39
dirent.h
12.34
KB
-rw-r--r--
2022-05-18 15:56
dlfcn.h
6.88
KB
-rw-r--r--
2022-05-18 15:56
elf.h
141.01
KB
-rw-r--r--
2022-05-18 15:57
endian.h
2.95
KB
-rw-r--r--
2022-05-18 15:56
envz.h
2.82
KB
-rw-r--r--
2022-05-18 15:56
err.h
2.18
KB
-rw-r--r--
2022-05-18 15:56
errno.h
2.33
KB
-rw-r--r--
2022-05-18 15:56
error.h
2.01
KB
-rw-r--r--
2022-05-18 15:56
execinfo.h
1.5
KB
-rw-r--r--
2022-05-18 15:57
expat.h
40.77
KB
-rw-r--r--
2022-10-06 12:52
expat_external.h
3.29
KB
-rw-r--r--
2022-10-06 12:52
fcntl.h
9.89
KB
-rw-r--r--
2022-05-18 15:56
features.h
12.87
KB
-rw-r--r--
2022-05-18 15:56
fenv.h
4.5
KB
-rw-r--r--
2022-05-18 15:56
fmtmsg.h
3.18
KB
-rw-r--r--
2022-05-18 15:56
fnmatch.h
2.27
KB
-rw-r--r--
2022-05-18 15:56
fpu_control.h
3.5
KB
-rw-r--r--
2022-05-18 15:56
fstab.h
3.04
KB
-rw-r--r--
2022-05-18 15:56
fts.h
5.17
KB
-rw-r--r--
2022-05-18 15:56
ftw.h
5.15
KB
-rw-r--r--
2022-05-18 15:56
gconv.h
5.16
KB
-rw-r--r--
2022-05-18 15:56
gdbm.h
5.75
KB
-rw-r--r--
2014-06-09 21:39
getopt.h
6.53
KB
-rw-r--r--
2022-05-18 15:56
glob.h
6.51
KB
-rw-r--r--
2022-05-18 15:56
gnu-versions.h
2.29
KB
-rw-r--r--
2022-05-18 15:56
grp.h
6.75
KB
-rw-r--r--
2022-05-18 15:56
gshadow.h
4.43
KB
-rw-r--r--
2022-05-18 15:57
gssapi.h
181
B
-rw-r--r--
2022-11-30 19:01
iconv.h
1.83
KB
-rw-r--r--
2022-05-18 15:56
ieee754.h
4.81
KB
-rw-r--r--
2022-05-18 15:56
ifaddrs.h
2.77
KB
-rw-r--r--
2022-05-18 15:57
inttypes.h
11.61
KB
-rw-r--r--
2022-05-18 15:56
kdb.h
60.12
KB
-rw-r--r--
2022-11-30 19:01
keyutils.h
7.08
KB
-rw-r--r--
2014-06-10 02:17
krad.h
8.72
KB
-rw-r--r--
2022-11-30 19:01
krb5.h
402
B
-rw-r--r--
2022-11-30 19:01
langinfo.h
15.57
KB
-rw-r--r--
2022-05-18 15:56
lastlog.h
126
B
-rw-r--r--
2022-05-18 15:57
libgen.h
1.37
KB
-rw-r--r--
2022-05-18 15:56
libintl.h
4.49
KB
-rw-r--r--
2022-05-18 15:56
libio.h
16.87
KB
-rw-r--r--
2022-05-18 15:56
libudev.h
10.06
KB
-rw-r--r--
2023-12-07 14:51
limits.h
4.42
KB
-rw-r--r--
2022-05-18 15:56
link.h
6.99
KB
-rw-r--r--
2022-05-18 15:57
locale.h
7.78
KB
-rw-r--r--
2022-05-18 15:56
malloc.h
6.44
KB
-rw-r--r--
2022-05-18 15:56
math.h
15.7
KB
-rw-r--r--
2022-05-18 15:56
mcheck.h
2.4
KB
-rw-r--r--
2022-05-18 15:56
memory.h
962
B
-rw-r--r--
2022-05-18 15:56
mntent.h
3.3
KB
-rw-r--r--
2022-05-18 15:56
monetary.h
1.73
KB
-rw-r--r--
2022-05-18 15:56
mqueue.h
3.7
KB
-rw-r--r--
2022-05-18 15:57
ndbm.h
2.39
KB
-rw-r--r--
2014-06-09 21:39
netdb.h
27.46
KB
-rw-r--r--
2022-05-18 15:57
nl_types.h
1.73
KB
-rw-r--r--
2022-05-18 15:56
nss.h
1.85
KB
-rw-r--r--
2022-05-18 15:57
obstack.h
18.84
KB
-rw-r--r--
2022-05-18 15:56
oniggnu.h
3.31
KB
-rw-r--r--
2018-03-19 02:56
onigposix.h
5.77
KB
-rw-r--r--
2018-01-25 09:01
oniguruma.h
43.69
KB
-rw-r--r--
2018-04-17 00:08
paths.h
2.91
KB
-rw-r--r--
2022-05-18 15:56
pcre.h
29.73
KB
-rw-r--r--
2017-08-02 03:07
pcre2.h
33.63
KB
-rw-r--r--
2017-08-02 21:44
pcre2posix.h
5.44
KB
-rw-r--r--
2017-08-02 21:44
pcre_scanner.h
6.45
KB
-rw-r--r--
2017-08-02 03:07
pcre_stringpiece.h
6.11
KB
-rw-r--r--
2017-08-02 03:07
pcrecpp.h
25.91
KB
-rw-r--r--
2017-08-02 03:07
pcrecpparg.h
6.62
KB
-rw-r--r--
2017-08-02 03:07
pcreposix.h
5.32
KB
-rw-r--r--
2017-08-02 03:07
poll.h
22
B
-rw-r--r--
2022-05-18 15:56
printf.h
6.56
KB
-rw-r--r--
2022-05-18 15:56
profile.h
11.87
KB
-rw-r--r--
2022-11-30 19:01
pthread.h
39.95
KB
-rw-r--r--
2022-05-18 15:57
pty.h
1.51
KB
-rw-r--r--
2022-05-18 15:57
pwd.h
5.87
KB
-rw-r--r--
2022-05-18 15:56
re_comp.h
957
B
-rw-r--r--
2022-05-18 15:56
regex.h
21.58
KB
-rw-r--r--
2022-05-18 15:56
regexp.h
6.89
KB
-rw-r--r--
2022-05-18 15:56
resolv.h
14.67
KB
-rw-r--r--
2022-05-18 15:57
sched.h
4.55
KB
-rw-r--r--
2022-05-18 15:56
search.h
5.11
KB
-rw-r--r--
2022-05-18 15:56
semaphore.h
2.36
KB
-rw-r--r--
2022-05-18 15:57
setjmp.h
3.97
KB
-rw-r--r--
2022-05-18 15:56
sgtty.h
1.33
KB
-rw-r--r--
2022-05-18 15:56
shadow.h
5.1
KB
-rw-r--r--
2022-05-18 15:57
signal.h
13.3
KB
-rw-r--r--
2022-05-18 15:56
sodium.h
2.47
KB
-rw-r--r--
2019-06-03 09:38
spawn.h
6.53
KB
-rw-r--r--
2022-05-18 15:56
sqlite3.h
340.45
KB
-rw-r--r--
2020-01-28 14:24
sqlite3ext.h
25.37
KB
-rw-r--r--
2020-01-28 14:24
stab.h
264
B
-rw-r--r--
2022-05-18 15:56
stdc-predef.h
1.59
KB
-rw-r--r--
2022-05-18 15:56
stdint.h
7.94
KB
-rw-r--r--
2022-05-18 15:56
stdio.h
30.9
KB
-rw-r--r--
2022-05-18 15:56
stdio_ext.h
2.74
KB
-rw-r--r--
2022-05-18 15:56
stdlib.h
33.23
KB
-rw-r--r--
2022-05-18 15:56
string.h
21.75
KB
-rw-r--r--
2022-05-18 15:56
strings.h
4.55
KB
-rw-r--r--
2022-05-18 15:56
syscall.h
25
B
-rw-r--r--
2022-05-18 15:56
sysexits.h
5.11
KB
-rw-r--r--
2022-05-18 15:56
syslog.h
24
B
-rw-r--r--
2022-05-18 15:56
tar.h
3.67
KB
-rw-r--r--
2022-05-18 15:56
termio.h
214
B
-rw-r--r--
2022-05-18 15:56
termios.h
3.52
KB
-rw-r--r--
2022-05-18 15:56
tgmath.h
18.11
KB
-rw-r--r--
2022-05-18 15:56
thread_db.h
15.65
KB
-rw-r--r--
2022-05-18 15:57
time.h
13.4
KB
-rw-r--r--
2022-05-18 15:56
ttyent.h
2.44
KB
-rw-r--r--
2022-05-18 15:56
uchar.h
2.42
KB
-rw-r--r--
2022-05-18 15:56
ucontext.h
1.92
KB
-rw-r--r--
2022-05-18 15:56
ulimit.h
1.55
KB
-rw-r--r--
2022-05-18 15:56
unistd.h
41.78
KB
-rw-r--r--
2022-05-18 15:56
ustat.h
23
B
-rw-r--r--
2022-05-18 15:56
utime.h
1.5
KB
-rw-r--r--
2022-05-18 15:56
utmp.h
3.16
KB
-rw-r--r--
2022-05-18 15:57
utmpx.h
4.02
KB
-rw-r--r--
2022-05-18 15:57
uv.h
65.66
KB
-rw-r--r--
2022-07-13 14:46
values.h
1.92
KB
-rw-r--r--
2022-05-18 15:56
verto-module.h
6.48
KB
-rw-r--r--
2014-06-10 07:44
verto.h
18.57
KB
-rw-r--r--
2014-06-10 07:44
wait.h
22
B
-rw-r--r--
2022-05-18 15:56
wchar.h
31.37
KB
-rw-r--r--
2022-05-18 15:56
wctype.h
10.89
KB
-rw-r--r--
2022-05-18 15:56
wordexp.h
2.47
KB
-rw-r--r--
2022-05-18 15:56
xlocale.h
1.66
KB
-rw-r--r--
2022-05-18 15:56
zconf.h
14.92
KB
-rw-r--r--
2023-03-07 14:49
zdict.h
25.81
KB
-rw-r--r--
2023-04-05 12:33
zlib.h
84.68
KB
-rw-r--r--
2023-03-07 14:49
zstd.h
167.36
KB
-rw-r--r--
2023-04-05 12:33
zstd_errors.h
4.43
KB
-rw-r--r--
2023-04-05 12:33
Save
Rename
/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ /* * Copyright 2013 Red Hat, Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* * This API is not considered as stable as the main krb5 API. * * - We may make arbitrary incompatible changes between feature releases * (e.g. from 1.12 to 1.13). * - We will make some effort to avoid making incompatible changes for * bugfix releases, but will make them if necessary. */ #ifndef KRAD_H_ #define KRAD_H_ #include <krb5.h> #include <verto.h> #include <stddef.h> #include <stdio.h> #define KRAD_PACKET_SIZE_MAX 4096 #define KRAD_SERVICE_TYPE_LOGIN 1 #define KRAD_SERVICE_TYPE_FRAMED 2 #define KRAD_SERVICE_TYPE_CALLBACK_LOGIN 3 #define KRAD_SERVICE_TYPE_CALLBACK_FRAMED 4 #define KRAD_SERVICE_TYPE_OUTBOUND 5 #define KRAD_SERVICE_TYPE_ADMINISTRATIVE 6 #define KRAD_SERVICE_TYPE_NAS_PROMPT 7 #define KRAD_SERVICE_TYPE_AUTHENTICATE_ONLY 8 #define KRAD_SERVICE_TYPE_CALLBACK_NAS_PROMPT 9 #define KRAD_SERVICE_TYPE_CALL_CHECK 10 #define KRAD_SERVICE_TYPE_CALLBACK_ADMINISTRATIVE 11 typedef struct krad_attrset_st krad_attrset; typedef struct krad_packet_st krad_packet; typedef struct krad_client_st krad_client; typedef unsigned char krad_code; typedef unsigned char krad_attr; /* Called when a response is received or the request times out. */ typedef void (*krad_cb)(krb5_error_code retval, const krad_packet *request, const krad_packet *response, void *data); /* * Called to iterate over a set of requests. Either the callback will be * called until it returns NULL, or it will be called with cancel = TRUE to * terminate in the middle of an iteration. */ typedef const krad_packet * (*krad_packet_iter_cb)(void *data, krb5_boolean cancel); /* * Code */ /* Convert a code name to its number. Only works for codes defined * by RFC 2875 or 2882. Returns 0 if the name was not found. */ krad_code krad_code_name2num(const char *name); /* Convert a code number to its name. Only works for attributes defined * by RFC 2865 or 2882. Returns NULL if the name was not found. */ const char * krad_code_num2name(krad_code code); /* * Attribute */ /* Convert an attribute name to its number. Only works for attributes defined * by RFC 2865. Returns 0 if the name was not found. */ krad_attr krad_attr_name2num(const char *name); /* Convert an attribute number to its name. Only works for attributes defined * by RFC 2865. Returns NULL if the name was not found. */ const char * krad_attr_num2name(krad_attr type); /* * Attribute set */ /* Create a new attribute set. */ krb5_error_code krad_attrset_new(krb5_context ctx, krad_attrset **set); /* Create a deep copy of an attribute set. */ krb5_error_code krad_attrset_copy(const krad_attrset *set, krad_attrset **copy); /* Free an attribute set. */ void krad_attrset_free(krad_attrset *set); /* Add an attribute to a set. */ krb5_error_code krad_attrset_add(krad_attrset *set, krad_attr type, const krb5_data *data); /* Add a four-octet unsigned number attribute to the given set. */ krb5_error_code krad_attrset_add_number(krad_attrset *set, krad_attr type, krb5_ui_4 num); /* Delete the specified attribute. */ void krad_attrset_del(krad_attrset *set, krad_attr type, size_t indx); /* Get the specified attribute. */ const krb5_data * krad_attrset_get(const krad_attrset *set, krad_attr type, size_t indx); /* * Packet */ /* Determine the bytes needed from the socket to get the whole packet. Don't * cache the return value as it can change! Returns -1 on EBADMSG. */ ssize_t krad_packet_bytes_needed(const krb5_data *buffer); /* Free a packet. */ void krad_packet_free(krad_packet *pkt); /* * Create a new request packet. * * This function takes the attributes specified in set and converts them into a * radius packet. The packet will have a randomized id. If cb is not NULL, it * will be called passing data as the argument to iterate over a set of * outstanding requests. In this case, the id will be both random and unique * across the set of requests. */ krb5_error_code krad_packet_new_request(krb5_context ctx, const char *secret, krad_code code, const krad_attrset *set, krad_packet_iter_cb cb, void *data, krad_packet **request); /* * Create a new response packet. * * This function is similar to krad_packet_new_requst() except that it crafts a * packet in response to a request packet. This new packet will borrow values * from the request such as the id and the authenticator. */ krb5_error_code krad_packet_new_response(krb5_context ctx, const char *secret, krad_code code, const krad_attrset *set, const krad_packet *request, krad_packet **response); /* * Decode a request radius packet from krb5_data. * * The resulting decoded packet will be a request packet stored in *reqpkt. * * If cb is NULL, *duppkt will always be NULL. * * If cb is not NULL, it will be called (with the data argument) to iterate * over a set of requests currently being processed. In this case, if the * packet is a duplicate of an already received request, the original request * will be set in *duppkt. */ krb5_error_code krad_packet_decode_request(krb5_context ctx, const char *secret, const krb5_data *buffer, krad_packet_iter_cb cb, void *data, const krad_packet **duppkt, krad_packet **reqpkt); /* * Decode a response radius packet from krb5_data. * * The resulting decoded packet will be a response packet stored in *rsppkt. * * If cb is NULL, *reqpkt will always be NULL. * * If cb is not NULL, it will be called (with the data argument) to iterate * over a set of requests awaiting responses. In this case, if the response * packet matches one of these requests, the original request will be set in * *reqpkt. */ krb5_error_code krad_packet_decode_response(krb5_context ctx, const char *secret, const krb5_data *buffer, krad_packet_iter_cb cb, void *data, const krad_packet **reqpkt, krad_packet **rsppkt); /* Encode packet. */ const krb5_data * krad_packet_encode(const krad_packet *pkt); /* Get the code for the given packet. */ krad_code krad_packet_get_code(const krad_packet *pkt); /* Get the specified attribute. */ const krb5_data * krad_packet_get_attr(const krad_packet *pkt, krad_attr type, size_t indx); /* * Client */ /* Create a new client. */ krb5_error_code krad_client_new(krb5_context kctx, verto_ctx *vctx, krad_client **client); /* Free the client. */ void krad_client_free(krad_client *client); /* * Send a request to a radius server. * * The remote host may be specified by one of the following formats: * - /path/to/unix.socket * - IPv4 * - IPv4:port * - IPv4:service * - [IPv6] * - [IPv6]:port * - [IPv6]:service * - hostname * - hostname:port * - hostname:service * * The timeout parameter (milliseconds) is the total timeout across all remote * hosts (when DNS returns multiple entries) and all retries. For stream * sockets, the retries parameter is ignored and no retries are performed. * * The cb function will be called with the data argument when either a response * is received or the request times out on all possible remote hosts. */ krb5_error_code krad_client_send(krad_client *rc, krad_code code, const krad_attrset *attrs, const char *remote, const char *secret, int timeout, size_t retries, krad_cb cb, void *data); #endif /* KRAD_H_ */