Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/usr.sbin/ctld/conf.h
103829 views
1
/*-
2
* SPDX-License-Identifier: BSD-2-Clause
3
*
4
* Copyright (c) 2012 The FreeBSD Foundation
5
*
6
* This software was developed by Edward Tomasz Napierala under sponsorship
7
* from the FreeBSD Foundation.
8
*
9
* Redistribution and use in source and binary forms, with or without
10
* modification, are permitted provided that the following conditions
11
* are met:
12
* 1. Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* 2. Redistributions in binary form must reproduce the above copyright
15
* notice, this list of conditions and the following disclaimer in the
16
* documentation and/or other materials provided with the distribution.
17
*
18
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28
* SUCH DAMAGE.
29
*/
30
31
#ifndef __CONF_H__
32
#define __CONF_H__
33
34
/*
35
* This file defines the interface between parse.y and the rest of
36
* ctld.
37
*/
38
39
__BEGIN_DECLS
40
41
bool auth_group_start(const char *name);
42
void auth_group_finish(void);
43
bool auth_group_add_chap(const char *user, const char *secret);
44
bool auth_group_add_chap_mutual(const char *user, const char *secret,
45
const char *user2, const char *secret2);
46
bool auth_group_add_host_address(const char *portal);
47
bool auth_group_add_host_nqn(const char *name);
48
bool auth_group_add_initiator_name(const char *name);
49
bool auth_group_add_initiator_portal(const char *portal);
50
bool auth_group_set_type(const char *type);
51
52
void conf_set_debug(int debug);
53
void conf_set_isns_period(int period);
54
void conf_set_isns_timeout(int timeout);
55
void conf_set_maxproc(int maxproc);
56
bool conf_set_pidfile_path(const char *path);
57
void conf_set_timeout(int timeout);
58
59
bool isns_add_server(const char *addr);
60
61
bool portal_group_start(const char *name);
62
void portal_group_finish(void);
63
bool portal_group_add_listen(const char *listen, bool iser);
64
bool portal_group_add_option(const char *name, const char *value);
65
bool portal_group_set_discovery_auth_group(const char *name);
66
bool portal_group_set_dscp(u_int dscp);
67
bool portal_group_set_filter(const char *filter);
68
void portal_group_set_foreign(void);
69
bool portal_group_set_offload(const char *offload);
70
bool portal_group_set_pcp(u_int pcp);
71
bool portal_group_set_redirection(const char *addr);
72
void portal_group_set_tag(uint16_t tag);
73
74
bool transport_group_start(const char *name);
75
bool transport_group_add_listen_discovery_tcp(const char *listen);
76
bool transport_group_add_listen_tcp(const char *listen);
77
78
bool target_start(const char *name);
79
void target_finish(void);
80
bool target_add_chap(const char *user, const char *secret);
81
bool target_add_chap_mutual(const char *user, const char *secret,
82
const char *user2, const char *secret2);
83
bool target_add_initiator_name(const char *name);
84
bool target_add_initiator_portal(const char *addr);
85
bool target_add_lun(u_int id, const char *name);
86
bool target_add_portal_group(const char *pg_name, const char *ag_name);
87
bool target_set_alias(const char *alias);
88
bool target_set_auth_group(const char *name);
89
bool target_set_auth_type(const char *type);
90
bool target_set_physical_port(const char *pport);
91
bool target_set_redirection(const char *addr);
92
bool target_start_lun(u_int id);
93
94
bool controller_start(const char *name);
95
bool controller_add_host_address(const char *addr);
96
bool controller_add_host_nqn(const char *name);
97
bool controller_add_namespace(u_int id, const char *name);
98
bool controller_start_namespace(u_int id);
99
100
bool lun_start(const char *name);
101
void lun_finish(void);
102
bool lun_add_option(const char *name, const char *value);
103
bool lun_set_backend(const char *value);
104
bool lun_set_blocksize(size_t value);
105
bool lun_set_ctl_lun(uint32_t value);
106
bool lun_set_device_id(const char *value);
107
bool lun_set_device_type(const char *value);
108
bool lun_set_path(const char *value);
109
bool lun_set_serial(const char *value);
110
bool lun_set_size(uint64_t value);
111
112
bool yyparse_conf(FILE *fp);
113
114
__END_DECLS
115
116
#endif /* !__CONF_H__ */
117
118