Change how sudo.conf is parsed. We now do a quick parse and then
set the values after the entire file has been parsed. This lets us init the debug system earlier. Plugin-specific debug flags are now stored in struct plugin_info and struct plugin_container and passed to the plugin via one or more debug_flags settings.
This commit is contained in:
2
MANIFEST
2
MANIFEST
@@ -131,6 +131,8 @@ lib/util/regress/sudo_conf/test5.in
|
|||||||
lib/util/regress/sudo_conf/test5.out.ok
|
lib/util/regress/sudo_conf/test5.out.ok
|
||||||
lib/util/regress/sudo_conf/test6.in
|
lib/util/regress/sudo_conf/test6.in
|
||||||
lib/util/regress/sudo_conf/test6.out.ok
|
lib/util/regress/sudo_conf/test6.out.ok
|
||||||
|
lib/util/regress/sudo_conf/test7.in
|
||||||
|
lib/util/regress/sudo_conf/test7.out.ok
|
||||||
lib/util/regress/sudo_parseln/parseln_test.c
|
lib/util/regress/sudo_parseln/parseln_test.c
|
||||||
lib/util/regress/sudo_parseln/test1.in
|
lib/util/regress/sudo_parseln/test1.in
|
||||||
lib/util/regress/sudo_parseln/test1.out.ok
|
lib/util/regress/sudo_parseln/test1.out.ok
|
||||||
|
@@ -238,10 +238,13 @@ DDEESSCCRRIIPPTTIIOONN
|
|||||||
would log all debugging statements at the _w_a_r_n level and higher in
|
would log all debugging statements at the _w_a_r_n level and higher in
|
||||||
addition to those at the _i_n_f_o level for the plugin subsystem.
|
addition to those at the _i_n_f_o level for the plugin subsystem.
|
||||||
|
|
||||||
Currently, only one Debug entry per program is supported. The ssuuddoo Debug
|
As of ssuuddoo 1.8.12, multiple Debug entries may be specified per program.
|
||||||
entry is shared by the ssuuddoo front end, ssuuddooeeddiitt and the plugins. A
|
Older versions of ssuuddoo only support a single Debug entry per program.
|
||||||
future release may add support for per-plugin Debug lines and/or support
|
Plugin-specific Debug entries are also supported starting with ssuuddoo
|
||||||
for multiple debugging files for a single program.
|
1.8.12 and are matched by either the base name of the plugin that was
|
||||||
|
loaded (for example sudoers.so) or by the plugin's fully-qualified path
|
||||||
|
name. Previously, the ssuuddooeerrss plugin shared the same Debug entry as the
|
||||||
|
ssuuddoo front end and could not be configured separately.
|
||||||
|
|
||||||
The following priorities are supported, in order of decreasing severity:
|
The following priorities are supported, in order of decreasing severity:
|
||||||
_c_r_i_t, _e_r_r, _w_a_r_n, _n_o_t_i_c_e, _d_i_a_g, _i_n_f_o, _t_r_a_c_e and _d_e_b_u_g. Each priority,
|
_c_r_i_t, _e_r_r, _w_a_r_n, _n_o_t_i_c_e, _d_i_a_g, _i_n_f_o, _t_r_a_c_e and _d_e_b_u_g. Each priority,
|
||||||
@@ -405,4 +408,4 @@ DDIISSCCLLAAIIMMEERR
|
|||||||
file distributed with ssuuddoo or http://www.sudo.ws/sudo/license.html for
|
file distributed with ssuuddoo or http://www.sudo.ws/sudo/license.html for
|
||||||
complete details.
|
complete details.
|
||||||
|
|
||||||
Sudo 1.8.11 July 24, 2014 Sudo 1.8.11
|
Sudo 1.8.11 October 21, 2014 Sudo 1.8.11
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
.\"
|
.\"
|
||||||
.TH "SUDO" "5" "July 24, 2014" "Sudo @PACKAGE_VERSION@" "OpenBSD Programmer's Manual"
|
.TH "SUDO" "5" "October 21, 2014" "Sudo @PACKAGE_VERSION@" "File Formats Manual"
|
||||||
.nh
|
.nh
|
||||||
.if n .ad l
|
.if n .ad l
|
||||||
.SH "NAME"
|
.SH "NAME"
|
||||||
@@ -460,19 +460,31 @@ level and higher in addition to those at the
|
|||||||
\fIinfo\fR
|
\fIinfo\fR
|
||||||
level for the plugin subsystem.
|
level for the plugin subsystem.
|
||||||
.PP
|
.PP
|
||||||
Currently, only one
|
As of
|
||||||
\fRDebug\fR
|
|
||||||
entry per program is supported. The
|
|
||||||
\fBsudo\fR
|
\fBsudo\fR
|
||||||
|
1.8.12, multiple
|
||||||
\fRDebug\fR
|
\fRDebug\fR
|
||||||
entry is shared by the
|
entries may be specified per program.
|
||||||
|
Older versions of
|
||||||
\fBsudo\fR
|
\fBsudo\fR
|
||||||
front end,
|
only support a single
|
||||||
\fBsudoedit\fR
|
|
||||||
and the plugins. A future release may add support for per-plugin
|
|
||||||
\fRDebug\fR
|
\fRDebug\fR
|
||||||
lines and/or support for multiple debugging files for a single
|
entry per program.
|
||||||
program.
|
Plugin-specific
|
||||||
|
\fRDebug\fR
|
||||||
|
entries are also supported starting with
|
||||||
|
\fBsudo\fR
|
||||||
|
1.8.12 and are matched by either the base name of the plugin that was loaded
|
||||||
|
(for example
|
||||||
|
\fRsudoers.so\fR)
|
||||||
|
or by the plugin's fully-qualified path name.
|
||||||
|
Previously, the
|
||||||
|
\fBsudoers\fR
|
||||||
|
plugin shared the same
|
||||||
|
\fRDebug\fR
|
||||||
|
entry as the
|
||||||
|
\fBsudo\fR
|
||||||
|
front end and could not be configured separately.
|
||||||
.PP
|
.PP
|
||||||
The following priorities are supported, in order of decreasing severity:
|
The following priorities are supported, in order of decreasing severity:
|
||||||
\fIcrit\fR, \fIerr\fR, \fIwarn\fR, \fInotice\fR, \fIdiag\fR, \fIinfo\fR, \fItrace\fR
|
\fIcrit\fR, \fIerr\fR, \fIwarn\fR, \fInotice\fR, \fIdiag\fR, \fIinfo\fR, \fItrace\fR
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
.\"
|
.\"
|
||||||
.Dd July 24, 2014
|
.Dd October 21, 2014
|
||||||
.Dt SUDO @mansectform@
|
.Dt SUDO @mansectform@
|
||||||
.Os Sudo @PACKAGE_VERSION@
|
.Os Sudo @PACKAGE_VERSION@
|
||||||
.Sh NAME
|
.Sh NAME
|
||||||
@@ -413,19 +413,31 @@ level and higher in addition to those at the
|
|||||||
.Em info
|
.Em info
|
||||||
level for the plugin subsystem.
|
level for the plugin subsystem.
|
||||||
.Pp
|
.Pp
|
||||||
Currently, only one
|
As of
|
||||||
.Li Debug
|
|
||||||
entry per program is supported. The
|
|
||||||
.Nm sudo
|
.Nm sudo
|
||||||
|
1.8.12, multiple
|
||||||
.Li Debug
|
.Li Debug
|
||||||
entry is shared by the
|
entries may be specified per program.
|
||||||
|
Older versions of
|
||||||
.Nm sudo
|
.Nm sudo
|
||||||
front end,
|
only support a single
|
||||||
.Nm sudoedit
|
|
||||||
and the plugins. A future release may add support for per-plugin
|
|
||||||
.Li Debug
|
.Li Debug
|
||||||
lines and/or support for multiple debugging files for a single
|
entry per program.
|
||||||
program.
|
Plugin-specific
|
||||||
|
.Li Debug
|
||||||
|
entries are also supported starting with
|
||||||
|
.Nm sudo
|
||||||
|
1.8.12 and are matched by either the base name of the plugin that was loaded
|
||||||
|
(for example
|
||||||
|
.Li sudoers.so )
|
||||||
|
or by the plugin's fully-qualified path name.
|
||||||
|
Previously, the
|
||||||
|
.Nm sudoers
|
||||||
|
plugin shared the same
|
||||||
|
.Li Debug
|
||||||
|
entry as the
|
||||||
|
.Nm sudo
|
||||||
|
front end and could not be configured separately.
|
||||||
.Pp
|
.Pp
|
||||||
The following priorities are supported, in order of decreasing severity:
|
The following priorities are supported, in order of decreasing severity:
|
||||||
.Em crit , err , warn , notice , diag , info , trace
|
.Em crit , err , warn , notice , diag , info , trace
|
||||||
|
@@ -115,15 +115,20 @@ DDEESSCCRRIIPPTTIIOONN
|
|||||||
or another value, back in the _c_o_m_m_a_n_d___i_n_f_o list.
|
or another value, back in the _c_o_m_m_a_n_d___i_n_f_o list.
|
||||||
|
|
||||||
debug_flags=string
|
debug_flags=string
|
||||||
A comma-separated list of debug flags that correspond
|
A debug file path name followed by a space and a comma-
|
||||||
to ssuuddoo's Debug entry in sudo.conf(4), if there is one.
|
separated list of debug flags that correspond to the
|
||||||
The flags are passed to the plugin as they appear in
|
plugin's Debug entry in sudo.conf(4), if there is one.
|
||||||
sudo.conf(4). The syntax used by ssuuddoo and the ssuuddooeerrss
|
The flags are passed to the plugin exactly as they
|
||||||
plugin is _s_u_b_s_y_s_t_e_m@_p_r_i_o_r_i_t_y but the plugin is free to
|
appear in sudo.conf(4). The syntax used by ssuuddoo and
|
||||||
use a different format so long as it does not include a
|
the ssuuddooeerrss plugin is _s_u_b_s_y_s_t_e_m@_p_r_i_o_r_i_t_y but a plugin
|
||||||
comma (`,'). There is not currently a way to specify a
|
is free to use a different format so long as it does
|
||||||
set of debug flags specific to the plugin--the flags
|
not include a comma (`,'). Prior to ssuuddoo 1.8.12, there
|
||||||
are shared by ssuuddoo and the plugin.
|
was no way to specify plugin-specific _d_e_b_u_g___f_l_a_g_s so
|
||||||
|
the value was always the same as that used by the ssuuddoo
|
||||||
|
front end and did not include a path name, only the
|
||||||
|
flags themselves. As of version 1.7 of the plugin
|
||||||
|
interface, ssuuddoo will only pass _d_e_b_u_g___f_l_a_g_s if
|
||||||
|
sudo.conf(4) contains a plugin-specific Debug entry.
|
||||||
|
|
||||||
debug_level=number
|
debug_level=number
|
||||||
This setting has been deprecated in favor of
|
This setting has been deprecated in favor of
|
||||||
@@ -1470,6 +1475,10 @@ PPLLUUGGIINN AAPPII CCHHAANNGGEELLOOGG
|
|||||||
Version 1.7 (sudo 1.8.12)
|
Version 1.7 (sudo 1.8.12)
|
||||||
The _p_l_u_g_i_n___p_a_t_h entry was added to the settings list.
|
The _p_l_u_g_i_n___p_a_t_h entry was added to the settings list.
|
||||||
|
|
||||||
|
The _d_e_b_u_g___f_l_a_g_s entry now starts with a debug file path name and
|
||||||
|
may occur multiple times if there are multiple plugin-specific
|
||||||
|
Debug lines in the sudo.conf(4) file.
|
||||||
|
|
||||||
SSEEEE AALLSSOO
|
SSEEEE AALLSSOO
|
||||||
sudo.conf(4), sudoers(4), sudo(1m)
|
sudo.conf(4), sudoers(4), sudo(1m)
|
||||||
|
|
||||||
@@ -1489,4 +1498,4 @@ DDIISSCCLLAAIIMMEERR
|
|||||||
file distributed with ssuuddoo or http://www.sudo.ws/sudo/license.html for
|
file distributed with ssuuddoo or http://www.sudo.ws/sudo/license.html for
|
||||||
complete details.
|
complete details.
|
||||||
|
|
||||||
Sudo 1.8.11 September 8, 2014 Sudo 1.8.11
|
Sudo 1.8.11 October 21, 2014 Sudo 1.8.11
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
.\"
|
.\"
|
||||||
.TH "SUDO_PLUGIN" "5" "September 8, 2014" "Sudo @PACKAGE_VERSION@" "File Formats Manual"
|
.TH "SUDO_PLUGIN" "5" "October 21, 2014" "Sudo @PACKAGE_VERSION@" "File Formats Manual"
|
||||||
.nh
|
.nh
|
||||||
.if n .ad l
|
.if n .ad l
|
||||||
.SH "NAME"
|
.SH "NAME"
|
||||||
@@ -206,13 +206,13 @@ The plugin may optionally pass this, or another value, back in the
|
|||||||
list.
|
list.
|
||||||
.TP 6n
|
.TP 6n
|
||||||
debug_flags=string
|
debug_flags=string
|
||||||
A comma-separated list of debug flags that correspond to
|
A debug file path name followed by a space and a comma-separated
|
||||||
\fBsudo\fR's
|
list of debug flags that correspond to the plugin's
|
||||||
\fRDebug\fR
|
\fRDebug\fR
|
||||||
entry in
|
entry in
|
||||||
sudo.conf(@mansectform@),
|
sudo.conf(@mansectform@),
|
||||||
if there is one.
|
if there is one.
|
||||||
The flags are passed to the plugin as they appear in
|
The flags are passed to the plugin exactly as they appear in
|
||||||
sudo.conf(@mansectform@).
|
sudo.conf(@mansectform@).
|
||||||
The syntax used by
|
The syntax used by
|
||||||
\fBsudo\fR
|
\fBsudo\fR
|
||||||
@@ -220,13 +220,25 @@ and the
|
|||||||
\fBsudoers\fR
|
\fBsudoers\fR
|
||||||
plugin is
|
plugin is
|
||||||
\fIsubsystem\fR@\fIpriority\fR
|
\fIsubsystem\fR@\fIpriority\fR
|
||||||
but the plugin is free to use a different
|
but a plugin is free to use a different
|
||||||
format so long as it does not include a comma
|
format so long as it does not include a comma
|
||||||
(\(oq,\&\(cq).
|
(\(oq,\&\(cq).
|
||||||
There is not currently a way to specify a set of debug flags specific
|
Prior to
|
||||||
to the plugin--the flags are shared by
|
|
||||||
\fBsudo\fR
|
\fBsudo\fR
|
||||||
and the plugin.
|
1.8.12, there was no way to specify plugin-specific
|
||||||
|
\fIdebug_flags\fR
|
||||||
|
so the value was always the same as that used by the
|
||||||
|
\fBsudo\fR
|
||||||
|
front end and did not include a path name, only the flags themselves.
|
||||||
|
As of version 1.7 of the plugin interface,
|
||||||
|
\fBsudo\fR
|
||||||
|
will only pass
|
||||||
|
\fIdebug_flags\fR
|
||||||
|
if
|
||||||
|
sudo.conf(@mansectform@)
|
||||||
|
contains a plugin-specific
|
||||||
|
\fRDebug\fR
|
||||||
|
entry.
|
||||||
.TP 6n
|
.TP 6n
|
||||||
debug_level=number
|
debug_level=number
|
||||||
This setting has been deprecated in favor of
|
This setting has been deprecated in favor of
|
||||||
@@ -2623,6 +2635,12 @@ The
|
|||||||
entry was added to the
|
entry was added to the
|
||||||
\fRsettings\fR
|
\fRsettings\fR
|
||||||
list.
|
list.
|
||||||
|
.sp
|
||||||
|
The
|
||||||
|
\fIdebug_flags\fR
|
||||||
|
entry now starts with a debug file path name and may occur multiple
|
||||||
|
times if there are multiple plugin-specific Debug lines in the
|
||||||
|
sudo.conf(@mansectform@) file.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
sudo.conf(@mansectform@),
|
sudo.conf(@mansectform@),
|
||||||
sudoers(@mansectform@),
|
sudoers(@mansectform@),
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
.\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
.\"
|
.\"
|
||||||
.Dd September 8, 2014
|
.Dd October 21, 2014
|
||||||
.Dt SUDO_PLUGIN @mansectform@
|
.Dt SUDO_PLUGIN @mansectform@
|
||||||
.Os Sudo @PACKAGE_VERSION@
|
.Os Sudo @PACKAGE_VERSION@
|
||||||
.Sh NAME
|
.Sh NAME
|
||||||
@@ -187,13 +187,13 @@ The plugin may optionally pass this, or another value, back in the
|
|||||||
.Em command_info
|
.Em command_info
|
||||||
list.
|
list.
|
||||||
.It debug_flags=string
|
.It debug_flags=string
|
||||||
A comma-separated list of debug flags that correspond to
|
A debug file path name followed by a space and a comma-separated
|
||||||
.Nm sudo Ns 's
|
list of debug flags that correspond to the plugin's
|
||||||
.Li Debug
|
.Li Debug
|
||||||
entry in
|
entry in
|
||||||
.Xr sudo.conf @mansectform@ ,
|
.Xr sudo.conf @mansectform@ ,
|
||||||
if there is one.
|
if there is one.
|
||||||
The flags are passed to the plugin as they appear in
|
The flags are passed to the plugin exactly as they appear in
|
||||||
.Xr sudo.conf @mansectform@ .
|
.Xr sudo.conf @mansectform@ .
|
||||||
The syntax used by
|
The syntax used by
|
||||||
.Nm sudo
|
.Nm sudo
|
||||||
@@ -201,13 +201,25 @@ and the
|
|||||||
.Nm sudoers
|
.Nm sudoers
|
||||||
plugin is
|
plugin is
|
||||||
.Em subsystem Ns @ Ns Em priority
|
.Em subsystem Ns @ Ns Em priority
|
||||||
but the plugin is free to use a different
|
but a plugin is free to use a different
|
||||||
format so long as it does not include a comma
|
format so long as it does not include a comma
|
||||||
.Pq Ql ,\& .
|
.Pq Ql ,\& .
|
||||||
There is not currently a way to specify a set of debug flags specific
|
Prior to
|
||||||
to the plugin--the flags are shared by
|
|
||||||
.Nm sudo
|
.Nm sudo
|
||||||
and the plugin.
|
1.8.12, there was no way to specify plugin-specific
|
||||||
|
.Em debug_flags
|
||||||
|
so the value was always the same as that used by the
|
||||||
|
.Nm sudo
|
||||||
|
front end and did not include a path name, only the flags themselves.
|
||||||
|
As of version 1.7 of the plugin interface,
|
||||||
|
.Nm sudo
|
||||||
|
will only pass
|
||||||
|
.Em debug_flags
|
||||||
|
if
|
||||||
|
.Xr sudo.conf @mansectform@
|
||||||
|
contains a plugin-specific
|
||||||
|
.Li Debug
|
||||||
|
entry.
|
||||||
.It debug_level=number
|
.It debug_level=number
|
||||||
This setting has been deprecated in favor of
|
This setting has been deprecated in favor of
|
||||||
.Em debug_flags .
|
.Em debug_flags .
|
||||||
@@ -2292,6 +2304,12 @@ The
|
|||||||
entry was added to the
|
entry was added to the
|
||||||
.Li settings
|
.Li settings
|
||||||
list.
|
list.
|
||||||
|
.Pp
|
||||||
|
The
|
||||||
|
.Em debug_flags
|
||||||
|
entry now starts with a debug file path name and may occur multiple
|
||||||
|
times if there are multiple plugin-specific Debug lines in the
|
||||||
|
.Xr sudo.conf @mansectform@ file.
|
||||||
.El
|
.El
|
||||||
.Sh SEE ALSO
|
.Sh SEE ALSO
|
||||||
.Xr sudo.conf @mansectform@ ,
|
.Xr sudo.conf @mansectform@ ,
|
||||||
|
@@ -23,15 +23,26 @@
|
|||||||
#define GROUP_SOURCE_STATIC 1
|
#define GROUP_SOURCE_STATIC 1
|
||||||
#define GROUP_SOURCE_DYNAMIC 2
|
#define GROUP_SOURCE_DYNAMIC 2
|
||||||
|
|
||||||
|
struct sudo_debug_file;
|
||||||
|
TAILQ_HEAD(sudo_conf_debug_file_list, sudo_debug_file);
|
||||||
|
|
||||||
struct plugin_info {
|
struct plugin_info {
|
||||||
TAILQ_ENTRY(plugin_info) entries;
|
TAILQ_ENTRY(plugin_info) entries;
|
||||||
|
struct sudo_conf_debug_file_list debug_files;
|
||||||
const char *path;
|
const char *path;
|
||||||
const char *symbol_name;
|
const char *symbol_name;
|
||||||
char * const * options;
|
char * const * options;
|
||||||
int lineno;
|
unsigned int lineno;
|
||||||
};
|
};
|
||||||
TAILQ_HEAD(plugin_info_list, plugin_info);
|
TAILQ_HEAD(plugin_info_list, plugin_info);
|
||||||
|
|
||||||
|
struct sudo_conf_debug {
|
||||||
|
TAILQ_ENTRY(sudo_conf_debug) entries;
|
||||||
|
struct sudo_conf_debug_file_list debug_files;
|
||||||
|
char *progname;
|
||||||
|
};
|
||||||
|
TAILQ_HEAD(sudo_conf_debug_list, sudo_conf_debug);
|
||||||
|
|
||||||
/* Read main sudo.conf file. */
|
/* Read main sudo.conf file. */
|
||||||
__dso_public void sudo_conf_read_v1(const char *conf_file);
|
__dso_public void sudo_conf_read_v1(const char *conf_file);
|
||||||
#define sudo_conf_read(_a) sudo_conf_read_v1((_a))
|
#define sudo_conf_read(_a) sudo_conf_read_v1((_a))
|
||||||
@@ -41,7 +52,7 @@ __dso_public const char *sudo_conf_askpass_path_v1(void);
|
|||||||
__dso_public const char *sudo_conf_sesh_path_v1(void);
|
__dso_public const char *sudo_conf_sesh_path_v1(void);
|
||||||
__dso_public const char *sudo_conf_noexec_path_v1(void);
|
__dso_public const char *sudo_conf_noexec_path_v1(void);
|
||||||
__dso_public const char *sudo_conf_plugin_dir_path_v1(void);
|
__dso_public const char *sudo_conf_plugin_dir_path_v1(void);
|
||||||
__dso_public const char *sudo_conf_debug_flags_v1(void);
|
__dso_public struct sudo_conf_debug_list *sudo_conf_debugging_v1(void);
|
||||||
__dso_public struct plugin_info_list *sudo_conf_plugins_v1(void);
|
__dso_public struct plugin_info_list *sudo_conf_plugins_v1(void);
|
||||||
__dso_public bool sudo_conf_disable_coredump_v1(void);
|
__dso_public bool sudo_conf_disable_coredump_v1(void);
|
||||||
__dso_public bool sudo_conf_probe_interfaces_v1(void);
|
__dso_public bool sudo_conf_probe_interfaces_v1(void);
|
||||||
@@ -51,7 +62,7 @@ __dso_public int sudo_conf_max_groups_v1(void);
|
|||||||
#define sudo_conf_sesh_path() sudo_conf_sesh_path_v1()
|
#define sudo_conf_sesh_path() sudo_conf_sesh_path_v1()
|
||||||
#define sudo_conf_noexec_path() sudo_conf_noexec_path_v1()
|
#define sudo_conf_noexec_path() sudo_conf_noexec_path_v1()
|
||||||
#define sudo_conf_plugin_dir_path() sudo_conf_plugin_dir_path_v1()
|
#define sudo_conf_plugin_dir_path() sudo_conf_plugin_dir_path_v1()
|
||||||
#define sudo_conf_debug_flags() sudo_conf_debug_flags_v1()
|
#define sudo_conf_debugging() sudo_conf_debugging_v1()
|
||||||
#define sudo_conf_plugins() sudo_conf_plugins_v1()
|
#define sudo_conf_plugins() sudo_conf_plugins_v1()
|
||||||
#define sudo_conf_disable_coredump() sudo_conf_disable_coredump_v1()
|
#define sudo_conf_disable_coredump() sudo_conf_disable_coredump_v1()
|
||||||
#define sudo_conf_probe_interfaces() sudo_conf_probe_interfaces_v1()
|
#define sudo_conf_probe_interfaces() sudo_conf_probe_interfaces_v1()
|
||||||
|
@@ -18,6 +18,17 @@
|
|||||||
#define _SUDO_DEBUG_H
|
#define _SUDO_DEBUG_H
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
#include "sudo_queue.h"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* List of debug files and flags for use in registration.
|
||||||
|
*/
|
||||||
|
struct sudo_debug_file {
|
||||||
|
TAILQ_ENTRY(sudo_debug_file) entries;
|
||||||
|
char *debug_file;
|
||||||
|
char *debug_flags;
|
||||||
|
};
|
||||||
|
struct sudo_conf_debug_file_list;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The priority and subsystem are encoded in a single 32-bit value.
|
* The priority and subsystem are encoded in a single 32-bit value.
|
||||||
|
@@ -300,7 +300,8 @@ cleandir: realclean
|
|||||||
# Autogenerated dependencies, do not modify
|
# Autogenerated dependencies, do not modify
|
||||||
aix.lo: $(srcdir)/aix.c $(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
aix.lo: $(srcdir)/aix.c $(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/aix.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/aix.c
|
||||||
alloc.lo: $(srcdir)/alloc.c $(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
alloc.lo: $(srcdir)/alloc.c $(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
@@ -319,8 +320,9 @@ closefrom.lo: $(srcdir)/closefrom.c $(incdir)/sudo_compat.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/closefrom.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/closefrom.c
|
||||||
conf_test.lo: $(srcdir)/regress/sudo_conf/conf_test.c \
|
conf_test.lo: $(srcdir)/regress/sudo_conf/conf_test.c \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_conf.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/sudo_conf/conf_test.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/sudo_conf/conf_test.c
|
||||||
event.lo: $(srcdir)/event.c $(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
event.lo: $(srcdir)/event.c $(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
@@ -370,8 +372,8 @@ getopt_long.lo: $(srcdir)/getopt_long.c $(incdir)/compat/getopt.h \
|
|||||||
gidlist.lo: $(srcdir)/gidlist.c $(incdir)/compat/stdbool.h \
|
gidlist.lo: $(srcdir)/gidlist.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_queue.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/gidlist.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/gidlist.c
|
||||||
glob.lo: $(srcdir)/glob.c $(incdir)/compat/charclass.h $(incdir)/compat/glob.h \
|
glob.lo: $(srcdir)/glob.c $(incdir)/compat/charclass.h $(incdir)/compat/glob.h \
|
||||||
$(incdir)/sudo_compat.h $(top_builddir)/config.h
|
$(incdir)/sudo_compat.h $(top_builddir)/config.h
|
||||||
@@ -389,10 +391,12 @@ isblank.lo: $(srcdir)/isblank.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/isblank.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/isblank.c
|
||||||
key_val.lo: $(srcdir)/key_val.c $(incdir)/compat/stdbool.h \
|
key_val.lo: $(srcdir)/key_val.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/key_val.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/key_val.c
|
||||||
lbuf.lo: $(srcdir)/lbuf.c $(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
lbuf.lo: $(srcdir)/lbuf.c $(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_lbuf.h $(top_builddir)/config.h
|
$(incdir)/sudo_debug.h $(incdir)/sudo_lbuf.h $(incdir)/sudo_queue.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/lbuf.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/lbuf.c
|
||||||
locale_stub.lo: $(top_srcdir)/src/locale_stub.c $(incdir)/sudo_compat.h \
|
locale_stub.lo: $(top_srcdir)/src/locale_stub.c $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
@@ -400,7 +404,8 @@ locale_stub.lo: $(top_srcdir)/src/locale_stub.c $(incdir)/sudo_compat.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(top_srcdir)/src/locale_stub.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(top_srcdir)/src/locale_stub.c
|
||||||
locking.lo: $(srcdir)/locking.c $(incdir)/compat/stdbool.h \
|
locking.lo: $(srcdir)/locking.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/locking.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/locking.c
|
||||||
memrchr.lo: $(srcdir)/memrchr.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
memrchr.lo: $(srcdir)/memrchr.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/memrchr.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/memrchr.c
|
||||||
@@ -417,7 +422,8 @@ mktemp.lo: $(srcdir)/mktemp.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mktemp.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mktemp.c
|
||||||
parseln.lo: $(srcdir)/parseln.c $(incdir)/compat/stdbool.h \
|
parseln.lo: $(srcdir)/parseln.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/parseln.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/parseln.c
|
||||||
parseln_test.lo: $(srcdir)/regress/sudo_parseln/parseln_test.c \
|
parseln_test.lo: $(srcdir)/regress/sudo_parseln/parseln_test.c \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
||||||
@@ -435,11 +441,13 @@ pw_dup.lo: $(srcdir)/pw_dup.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/pw_dup.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/pw_dup.c
|
||||||
secure_path.lo: $(srcdir)/secure_path.c $(incdir)/compat/stdbool.h \
|
secure_path.lo: $(srcdir)/secure_path.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/secure_path.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/secure_path.c
|
||||||
setgroups.lo: $(srcdir)/setgroups.c $(incdir)/compat/stdbool.h \
|
setgroups.lo: $(srcdir)/setgroups.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/setgroups.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/setgroups.c
|
||||||
sha2.lo: $(srcdir)/sha2.c $(incdir)/compat/endian.h $(incdir)/compat/sha2.h \
|
sha2.lo: $(srcdir)/sha2.c $(incdir)/compat/endian.h $(incdir)/compat/sha2.h \
|
||||||
$(incdir)/sudo_compat.h $(top_builddir)/config.h
|
$(incdir)/sudo_compat.h $(top_builddir)/config.h
|
||||||
@@ -462,17 +470,18 @@ strsignal.lo: $(srcdir)/strsignal.c $(incdir)/sudo_compat.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strsignal.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strsignal.c
|
||||||
strtobool.lo: $(srcdir)/strtobool.c $(incdir)/compat/stdbool.h \
|
strtobool.lo: $(srcdir)/strtobool.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtobool.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtobool.c
|
||||||
strtoid.lo: $(srcdir)/strtoid.c $(incdir)/compat/stdbool.h \
|
strtoid.lo: $(srcdir)/strtoid.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_queue.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtoid.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtoid.c
|
||||||
strtomode.lo: $(srcdir)/strtomode.c $(incdir)/compat/stdbool.h \
|
strtomode.lo: $(srcdir)/strtomode.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_queue.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtomode.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/strtomode.c
|
||||||
strtonum.lo: $(srcdir)/strtonum.c $(incdir)/sudo_compat.h \
|
strtonum.lo: $(srcdir)/strtonum.c $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_gettext.h $(top_builddir)/config.h
|
$(incdir)/sudo_gettext.h $(top_builddir)/config.h
|
||||||
@@ -487,19 +496,22 @@ sudo_conf.lo: $(srcdir)/sudo_conf.c $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_conf.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_conf.c
|
||||||
sudo_debug.lo: $(srcdir)/sudo_debug.c $(incdir)/compat/stdbool.h \
|
sudo_debug.lo: $(srcdir)/sudo_debug.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_debug.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_debug.c
|
||||||
sudo_dso.lo: $(srcdir)/sudo_dso.c $(incdir)/sudo_compat.h $(incdir)/sudo_dso.h \
|
sudo_dso.lo: $(srcdir)/sudo_dso.c $(incdir)/sudo_compat.h $(incdir)/sudo_dso.h \
|
||||||
$(top_builddir)/config.h
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_dso.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_dso.c
|
||||||
term.lo: $(srcdir)/term.c $(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
term.lo: $(srcdir)/term.c $(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_debug.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/term.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/term.c
|
||||||
ttysize.lo: $(srcdir)/ttysize.c $(incdir)/compat/stdbool.h \
|
ttysize.lo: $(srcdir)/ttysize.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/ttysize.c
|
$(LIBTOOL) --mode=compile $(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/ttysize.c
|
||||||
utimes.lo: $(srcdir)/utimes.c $(incdir)/compat/utime.h $(incdir)/sudo_compat.h \
|
utimes.lo: $(srcdir)/utimes.c $(incdir)/compat/utime.h $(incdir)/sudo_compat.h \
|
||||||
$(top_builddir)/config.h
|
$(top_builddir)/config.h
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
* Copyright (c) 2013-2014 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||||
*
|
*
|
||||||
* Permission to use, copy, modify, and distribute this software for any
|
* Permission to use, copy, modify, and distribute this software for any
|
||||||
* purpose with or without fee is hereby granted, provided that the above
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
@@ -43,6 +43,7 @@
|
|||||||
|
|
||||||
#include "sudo_compat.h"
|
#include "sudo_compat.h"
|
||||||
#include "sudo_conf.h"
|
#include "sudo_conf.h"
|
||||||
|
#include "sudo_debug.h"
|
||||||
#include "sudo_util.h"
|
#include "sudo_util.h"
|
||||||
|
|
||||||
static void sudo_conf_dump(void);
|
static void sudo_conf_dump(void);
|
||||||
@@ -72,6 +73,9 @@ static void
|
|||||||
sudo_conf_dump(void)
|
sudo_conf_dump(void)
|
||||||
{
|
{
|
||||||
struct plugin_info_list *plugins = sudo_conf_plugins();
|
struct plugin_info_list *plugins = sudo_conf_plugins();
|
||||||
|
struct sudo_conf_debug_list *debug_list = sudo_conf_debugging();
|
||||||
|
struct sudo_conf_debug *debug_spec;
|
||||||
|
struct sudo_debug_file *debug_file;
|
||||||
struct plugin_info *info;
|
struct plugin_info *info;
|
||||||
|
|
||||||
printf("Set disable_coredump %s\n",
|
printf("Set disable_coredump %s\n",
|
||||||
@@ -80,8 +84,6 @@ sudo_conf_dump(void)
|
|||||||
sudo_conf_group_source() == GROUP_SOURCE_ADAPTIVE ? "adaptive" :
|
sudo_conf_group_source() == GROUP_SOURCE_ADAPTIVE ? "adaptive" :
|
||||||
sudo_conf_group_source() == GROUP_SOURCE_STATIC ? "static" : "dynamic");
|
sudo_conf_group_source() == GROUP_SOURCE_STATIC ? "static" : "dynamic");
|
||||||
printf("Set max_groups %d\n", sudo_conf_max_groups());
|
printf("Set max_groups %d\n", sudo_conf_max_groups());
|
||||||
if (sudo_conf_debug_flags() != NULL)
|
|
||||||
printf("Debug %s %s\n", getprogname(), sudo_conf_debug_flags());
|
|
||||||
if (sudo_conf_askpass_path() != NULL)
|
if (sudo_conf_askpass_path() != NULL)
|
||||||
printf("Path askpass %s\n", sudo_conf_askpass_path());
|
printf("Path askpass %s\n", sudo_conf_askpass_path());
|
||||||
#ifdef _PATH_SUDO_NOEXEC
|
#ifdef _PATH_SUDO_NOEXEC
|
||||||
@@ -97,4 +99,10 @@ sudo_conf_dump(void)
|
|||||||
}
|
}
|
||||||
putchar('\n');
|
putchar('\n');
|
||||||
}
|
}
|
||||||
|
TAILQ_FOREACH(debug_spec, debug_list, entries) {
|
||||||
|
TAILQ_FOREACH(debug_file, &debug_spec->debug_files, entries) {
|
||||||
|
printf("Debug %s %s %s\n", debug_spec->progname,
|
||||||
|
debug_file->debug_file, debug_file->debug_flags);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
4
lib/util/regress/sudo_conf/test7.in
Normal file
4
lib/util/regress/sudo_conf/test7.in
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
Debug sudo /var/log/sudo_debug all@info
|
||||||
|
Debug sudo /var/log/sudo_debug util@debug
|
||||||
|
Debug visudo /var/log/sudo_debug match@debug
|
||||||
|
Debug sudoers.so /var/log/sudoers_debug match@debug,nss@info
|
7
lib/util/regress/sudo_conf/test7.out.ok
Normal file
7
lib/util/regress/sudo_conf/test7.out.ok
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Set disable_coredump true
|
||||||
|
Set group_source adaptive
|
||||||
|
Set max_groups -1
|
||||||
|
Debug sudo /var/log/sudo_debug all@info
|
||||||
|
Debug sudo /var/log/sudo_debug util@debug
|
||||||
|
Debug visudo /var/log/sudo_debug match@debug
|
||||||
|
Debug sudoers.so /var/log/sudoers_debug match@debug,nss@info
|
@@ -68,69 +68,85 @@
|
|||||||
struct sudo_conf_table {
|
struct sudo_conf_table {
|
||||||
const char *name;
|
const char *name;
|
||||||
unsigned int namelen;
|
unsigned int namelen;
|
||||||
void (*setter)(const char *entry, const char *conf_file);
|
void (*parser)(const char *entry, unsigned int lineno);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct sudo_conf_paths {
|
struct sudo_conf_var_table {
|
||||||
|
const char *name;
|
||||||
|
bool (*setter)(const char *entry, const char *conf_file, unsigned int conf_lineno);
|
||||||
|
};
|
||||||
|
|
||||||
|
struct sudo_conf_path_table {
|
||||||
const char *pname;
|
const char *pname;
|
||||||
unsigned int pnamelen;
|
|
||||||
const char *pval;
|
const char *pval;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void set_debug(const char *entry, const char *conf_file);
|
struct sudo_conf_setting {
|
||||||
static void set_path(const char *entry, const char *conf_file);
|
TAILQ_ENTRY(sudo_conf_setting) entries;
|
||||||
static void set_plugin(const char *entry, const char *conf_file);
|
char *name;
|
||||||
static void set_variable(const char *entry, const char *conf_file);
|
char *value;
|
||||||
static void set_var_disable_coredump(const char *entry, const char *conf_file);
|
unsigned int lineno;
|
||||||
static void set_var_group_source(const char *entry, const char *conf_file);
|
};
|
||||||
static void set_var_max_groups(const char *entry, const char *conf_file);
|
TAILQ_HEAD(sudo_conf_setting_list, sudo_conf_setting);
|
||||||
static void set_var_probe_interfaces(const char *entry, const char *conf_file);
|
|
||||||
|
|
||||||
static unsigned int conf_lineno;
|
static void store_debug(const char *entry, unsigned int lineno);
|
||||||
|
static void store_path(const char *entry, unsigned int lineno);
|
||||||
|
static void store_plugin(const char *entry, unsigned int lineno);
|
||||||
|
static void store_variable(const char *entry, unsigned int lineno);
|
||||||
|
|
||||||
static struct sudo_conf_table sudo_conf_table[] = {
|
static struct sudo_conf_table sudo_conf_table[] = {
|
||||||
{ "Debug", sizeof("Debug") - 1, set_debug },
|
{ "Debug", sizeof("Debug") - 1, store_debug },
|
||||||
{ "Path", sizeof("Path") - 1, set_path },
|
{ "Path", sizeof("Path") - 1, store_path },
|
||||||
{ "Plugin", sizeof("Plugin") - 1, set_plugin },
|
{ "Plugin", sizeof("Plugin") - 1, store_plugin },
|
||||||
{ "Set", sizeof("Set") - 1, set_variable },
|
{ "Set", sizeof("Set") - 1, store_variable },
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct sudo_conf_table sudo_conf_table_vars[] = {
|
static bool set_var_disable_coredump(const char *entry, const char *conf_file, unsigned int);
|
||||||
{ "disable_coredump", sizeof("disable_coredump") - 1, set_var_disable_coredump },
|
static bool set_var_group_source(const char *entry, const char *conf_file, unsigned int);
|
||||||
{ "group_source", sizeof("group_source") - 1, set_var_group_source },
|
static bool set_var_max_groups(const char *entry, const char *conf_file, unsigned int);
|
||||||
{ "max_groups", sizeof("max_groups") - 1, set_var_max_groups },
|
static bool set_var_probe_interfaces(const char *entry, const char *conf_file, unsigned int);
|
||||||
{ "probe_interfaces", sizeof("probe_interfaces") - 1, set_var_probe_interfaces },
|
|
||||||
|
static struct sudo_conf_var_table sudo_conf_var_table[] = {
|
||||||
|
{ "disable_coredump", set_var_disable_coredump },
|
||||||
|
{ "group_source", set_var_group_source },
|
||||||
|
{ "max_groups", set_var_max_groups },
|
||||||
|
{ "probe_interfaces", set_var_probe_interfaces },
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* XXX - it would be nice to make this local to sudo_conf_read */
|
||||||
static struct sudo_conf_data {
|
static struct sudo_conf_data {
|
||||||
bool disable_coredump;
|
bool disable_coredump;
|
||||||
bool probe_interfaces;
|
bool probe_interfaces;
|
||||||
int group_source;
|
int group_source;
|
||||||
int max_groups;
|
int max_groups;
|
||||||
const char *debug_flags;
|
struct sudo_conf_setting_list paths;
|
||||||
|
struct sudo_conf_setting_list settings;
|
||||||
|
struct sudo_conf_debug_list debugging;
|
||||||
struct plugin_info_list plugins;
|
struct plugin_info_list plugins;
|
||||||
struct sudo_conf_paths paths[5];
|
struct sudo_conf_path_table path_table[5];
|
||||||
} sudo_conf_data = {
|
} sudo_conf_data = {
|
||||||
true,
|
true,
|
||||||
true,
|
true,
|
||||||
GROUP_SOURCE_ADAPTIVE,
|
GROUP_SOURCE_ADAPTIVE,
|
||||||
-1,
|
-1,
|
||||||
NULL,
|
TAILQ_HEAD_INITIALIZER(sudo_conf_data.paths),
|
||||||
|
TAILQ_HEAD_INITIALIZER(sudo_conf_data.settings),
|
||||||
|
TAILQ_HEAD_INITIALIZER(sudo_conf_data.debugging),
|
||||||
TAILQ_HEAD_INITIALIZER(sudo_conf_data.plugins),
|
TAILQ_HEAD_INITIALIZER(sudo_conf_data.plugins),
|
||||||
{
|
{
|
||||||
#define SUDO_CONF_ASKPASS_IDX 0
|
#define SUDO_CONF_ASKPASS_IDX 0
|
||||||
{ "askpass", sizeof("askpass") - 1, _PATH_SUDO_ASKPASS },
|
{ "askpass", _PATH_SUDO_ASKPASS },
|
||||||
#define SUDO_CONF_SESH_IDX 1
|
#define SUDO_CONF_SESH_IDX 1
|
||||||
{ "sesh", sizeof("sesh") - 1, _PATH_SUDO_SESH },
|
{ "sesh", _PATH_SUDO_SESH },
|
||||||
#ifdef _PATH_SUDO_NOEXEC
|
#ifdef _PATH_SUDO_NOEXEC
|
||||||
#define SUDO_CONF_NOEXEC_IDX 2
|
#define SUDO_CONF_NOEXEC_IDX 2
|
||||||
{ "noexec", sizeof("noexec") - 1, _PATH_SUDO_NOEXEC },
|
{ "noexec", _PATH_SUDO_NOEXEC },
|
||||||
#endif
|
#endif
|
||||||
#ifdef _PATH_SUDO_PLUGIN_DIR
|
#ifdef _PATH_SUDO_PLUGIN_DIR
|
||||||
#define SUDO_CONF_PLUGIN_IDX 3
|
#define SUDO_CONF_PLUGIN_IDX 3
|
||||||
{ "plugin", sizeof("plugin") - 1, _PATH_SUDO_PLUGIN_DIR },
|
{ "plugin", _PATH_SUDO_PLUGIN_DIR },
|
||||||
#endif
|
#endif
|
||||||
{ NULL }
|
{ NULL }
|
||||||
}
|
}
|
||||||
@@ -140,153 +156,151 @@ static struct sudo_conf_data {
|
|||||||
* "Set variable_name value"
|
* "Set variable_name value"
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
set_variable(const char *entry, const char *conf_file)
|
store_variable(const char *entry, unsigned int lineno)
|
||||||
{
|
{
|
||||||
struct sudo_conf_table *var;
|
struct sudo_conf_setting *setting;
|
||||||
|
const char *value;
|
||||||
|
size_t namelen;
|
||||||
|
|
||||||
for (var = sudo_conf_table_vars; var->name != NULL; var++) {
|
/* Split line into name and value. */
|
||||||
if (strncmp(entry, var->name, var->namelen) == 0 &&
|
namelen = strcspn(entry, " \t");
|
||||||
isblank((unsigned char)entry[var->namelen])) {
|
if (entry[namelen] == '\0')
|
||||||
entry += var->namelen + 1;
|
return; /* no value! */
|
||||||
while (isblank((unsigned char)*entry))
|
value = entry + namelen;
|
||||||
entry++;
|
do {
|
||||||
var->setter(entry, conf_file);
|
value++;
|
||||||
break;
|
} while (isblank((unsigned char)*value));
|
||||||
}
|
if (*value == '\0')
|
||||||
}
|
return; /* no value! */
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
setting = sudo_ecalloc(1, sizeof(*setting));
|
||||||
set_var_disable_coredump(const char *entry, const char *conf_file)
|
setting->name = sudo_estrndup(entry, namelen);
|
||||||
{
|
setting->value = sudo_estrdup(value);
|
||||||
int val = sudo_strtobool(entry);
|
setting->lineno = lineno;
|
||||||
|
TAILQ_INSERT_TAIL(&sudo_conf_data.settings, setting, entries);
|
||||||
if (val != -1)
|
|
||||||
sudo_conf_data.disable_coredump = val;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
set_var_group_source(const char *entry, const char *conf_file)
|
|
||||||
{
|
|
||||||
if (strcasecmp(entry, "adaptive") == 0) {
|
|
||||||
sudo_conf_data.group_source = GROUP_SOURCE_ADAPTIVE;
|
|
||||||
} else if (strcasecmp(entry, "static") == 0) {
|
|
||||||
sudo_conf_data.group_source = GROUP_SOURCE_STATIC;
|
|
||||||
} else if (strcasecmp(entry, "dynamic") == 0) {
|
|
||||||
sudo_conf_data.group_source = GROUP_SOURCE_DYNAMIC;
|
|
||||||
} else {
|
|
||||||
sudo_warnx(U_("unsupported group source `%s' in %s, line %d"), entry,
|
|
||||||
conf_file, conf_lineno);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
set_var_max_groups(const char *entry, const char *conf_file)
|
|
||||||
{
|
|
||||||
int max_groups;
|
|
||||||
|
|
||||||
max_groups = strtonum(entry, 1, INT_MAX, NULL);
|
|
||||||
if (max_groups > 0) {
|
|
||||||
sudo_conf_data.max_groups = max_groups;
|
|
||||||
} else {
|
|
||||||
sudo_warnx(U_("invalid max groups `%s' in %s, line %d"), entry,
|
|
||||||
conf_file, conf_lineno);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
set_var_probe_interfaces(const char *entry, const char *conf_file)
|
|
||||||
{
|
|
||||||
int val = sudo_strtobool(entry);
|
|
||||||
|
|
||||||
if (val != -1)
|
|
||||||
sudo_conf_data.probe_interfaces = val;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* "Debug progname debug_file debug_flags"
|
* "Path name /path/to/file"
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
set_debug(const char *entry, const char *conf_file)
|
store_path(const char *entry, unsigned int lineno)
|
||||||
{
|
{
|
||||||
size_t filelen, proglen;
|
struct sudo_conf_setting *path_spec;
|
||||||
const char *progname;
|
const char *path;
|
||||||
char *debug_file, *debug_flags;
|
size_t namelen;
|
||||||
|
|
||||||
/* Is this debug setting for me? */
|
/* Split line into name and path. */
|
||||||
progname = getprogname();
|
namelen = strcspn(entry, " \t");
|
||||||
if (strcmp(progname, "sudoedit") == 0)
|
if (entry[namelen] == '\0')
|
||||||
progname = "sudo";
|
return; /* no path! */
|
||||||
proglen = strlen(progname);
|
path = entry + namelen;
|
||||||
if (strncmp(entry, progname, proglen) != 0 ||
|
do {
|
||||||
!isblank((unsigned char)entry[proglen]))
|
path++;
|
||||||
return;
|
} while (isblank((unsigned char)*path));
|
||||||
entry += proglen + 1;
|
if (*path == '\0')
|
||||||
while (isblank((unsigned char)*entry))
|
return; /* no path! */
|
||||||
entry++;
|
|
||||||
|
|
||||||
debug_flags = strpbrk(entry, " \t");
|
path_spec = sudo_ecalloc(1, sizeof(*path_spec));
|
||||||
if (debug_flags == NULL)
|
path_spec->name = sudo_estrndup(entry, namelen);
|
||||||
return;
|
path_spec->value = sudo_estrdup(path);
|
||||||
filelen = (size_t)(debug_flags - entry);
|
path_spec->lineno = lineno;
|
||||||
while (isblank((unsigned char)*debug_flags))
|
TAILQ_INSERT_TAIL(&sudo_conf_data.paths, path_spec, entries);
|
||||||
debug_flags++;
|
|
||||||
|
|
||||||
/* Set debug file and parse the flags (init debug as soon as possible). */
|
|
||||||
debug_file = sudo_estrndup(entry, filelen);
|
|
||||||
debug_flags = sudo_estrdup(debug_flags);
|
|
||||||
sudo_debug_init(debug_file, debug_flags);
|
|
||||||
sudo_efree(debug_file);
|
|
||||||
|
|
||||||
sudo_conf_data.debug_flags = debug_flags;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* "Debug program /path/to/log flags,..."
|
||||||
|
*/
|
||||||
static void
|
static void
|
||||||
set_path(const char *entry, const char *conf_file)
|
store_debug(const char *progname, unsigned int lineno)
|
||||||
{
|
{
|
||||||
const char *name, *path;
|
struct sudo_conf_debug *debug_spec;
|
||||||
struct sudo_conf_paths *cur;
|
struct sudo_debug_file *debug_file;
|
||||||
|
const char *path, *flags, *cp = progname;
|
||||||
|
size_t pathlen, prognamelen;
|
||||||
|
|
||||||
/* Parse Path line */
|
/* Parse progname. */
|
||||||
name = entry;
|
while (*cp != '\0' && !isblank((unsigned char)*cp))
|
||||||
path = strpbrk(entry, " \t");
|
cp++;
|
||||||
if (path == NULL)
|
if (*cp == '\0')
|
||||||
return;
|
return; /* not enough fields */
|
||||||
while (isblank((unsigned char)*path))
|
prognamelen = (size_t)(cp - progname);
|
||||||
path++;
|
do {
|
||||||
|
cp++;
|
||||||
|
} while (isblank((unsigned char)*cp));
|
||||||
|
if (*cp == '\0')
|
||||||
|
return; /* not enough fields */
|
||||||
|
|
||||||
/* Match supported paths, ignore the rest. */
|
/* Parse path. */
|
||||||
for (cur = sudo_conf_data.paths; cur->pname != NULL; cur++) {
|
path = cp;
|
||||||
if (strncasecmp(name, cur->pname, cur->pnamelen) == 0 &&
|
while (*cp != '\0' && !isblank((unsigned char)*cp))
|
||||||
isblank((unsigned char)name[cur->pnamelen])) {
|
cp++;
|
||||||
cur->pval = sudo_estrdup(path);
|
if (*cp == '\0')
|
||||||
|
return; /* not enough fields */
|
||||||
|
pathlen = (size_t)(cp - path);
|
||||||
|
do {
|
||||||
|
cp++;
|
||||||
|
} while (isblank((unsigned char)*cp));
|
||||||
|
if (*cp == '\0')
|
||||||
|
return; /* not enough fields */
|
||||||
|
|
||||||
|
/* Remainder is flags (freeform). */
|
||||||
|
flags = cp;
|
||||||
|
|
||||||
|
/* If progname already exists, use it, else alloc a new one. */
|
||||||
|
TAILQ_FOREACH(debug_spec, &sudo_conf_data.debugging, entries) {
|
||||||
|
if (strncmp(debug_spec->progname, progname, prognamelen) == 0 &&
|
||||||
|
debug_spec->progname[prognamelen] == '\0' &&
|
||||||
|
isblank((unsigned char)debug_spec->progname[prognamelen]))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (debug_spec == NULL) {
|
||||||
|
debug_spec = sudo_emalloc(sizeof(*debug_spec));
|
||||||
|
debug_spec->progname = sudo_estrndup(progname, prognamelen);
|
||||||
|
TAILQ_INIT(&debug_spec->debug_files);
|
||||||
|
TAILQ_INSERT_TAIL(&sudo_conf_data.debugging, debug_spec, entries);
|
||||||
}
|
}
|
||||||
|
debug_file = sudo_emalloc(sizeof(*debug_file));
|
||||||
|
debug_file->debug_file = sudo_estrndup(path, pathlen);
|
||||||
|
debug_file->debug_flags = sudo_estrdup(flags);
|
||||||
|
TAILQ_INSERT_TAIL(&debug_spec->debug_files, debug_file, entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* "Plugin symbol /path/to/log args..."
|
||||||
|
*/
|
||||||
static void
|
static void
|
||||||
set_plugin(const char *entry, const char *conf_file)
|
store_plugin(const char *cp, unsigned int lineno)
|
||||||
{
|
{
|
||||||
struct plugin_info *info;
|
struct plugin_info *info;
|
||||||
const char *name, *path, *cp, *ep;
|
const char *ep, *path, *symbol;
|
||||||
char **options = NULL;
|
char **options = NULL;
|
||||||
size_t namelen, pathlen;
|
size_t pathlen, symlen;
|
||||||
unsigned int nopts;
|
unsigned int nopts;
|
||||||
|
|
||||||
/* Parse Plugin line */
|
/* Parse symbol. */
|
||||||
name = entry;
|
if (*cp == '\0')
|
||||||
path = strpbrk(entry, " \t");
|
return; /* not enough fields */
|
||||||
if (path == NULL)
|
symbol = cp;
|
||||||
return;
|
while (*cp != '\0' && !isblank((unsigned char)*cp))
|
||||||
namelen = (size_t)(path - name);
|
cp++;
|
||||||
while (isblank((unsigned char)*path))
|
symlen = (size_t)(cp - symbol);
|
||||||
path++;
|
while (isblank((unsigned char)*cp))
|
||||||
if ((cp = strpbrk(path, " \t")) != NULL) {
|
cp++;
|
||||||
/* Convert any options to an array. */
|
|
||||||
|
/* Parse path. */
|
||||||
|
if (*cp == '\0')
|
||||||
|
return; /* not enough fields */
|
||||||
|
path = cp;
|
||||||
|
while (*cp != '\0' && !isblank((unsigned char)*cp))
|
||||||
|
cp++;
|
||||||
pathlen = (size_t)(cp - path);
|
pathlen = (size_t)(cp - path);
|
||||||
while (isblank((unsigned char)*cp))
|
while (isblank((unsigned char)*cp))
|
||||||
cp++;
|
cp++;
|
||||||
|
|
||||||
|
/* Split options into an array if present. */
|
||||||
|
/* XXX - consider as separate function */
|
||||||
|
if (*cp != '\0') {
|
||||||
/* Count number of options and allocate array. */
|
/* Count number of options and allocate array. */
|
||||||
for (ep = cp, nopts = 1; (ep = strpbrk(ep, " \t")) != NULL; nopts++) {
|
for (ep = cp, nopts = 1; (ep = strpbrk(ep, " \t")) != NULL; nopts++) {
|
||||||
while (isblank((unsigned char)*ep))
|
while (isblank((unsigned char)*ep))
|
||||||
@@ -302,36 +316,211 @@ set_plugin(const char *entry, const char *conf_file)
|
|||||||
}
|
}
|
||||||
options[nopts++] = sudo_estrdup(cp);
|
options[nopts++] = sudo_estrdup(cp);
|
||||||
options[nopts] = NULL;
|
options[nopts] = NULL;
|
||||||
} else {
|
|
||||||
/* No extra options. */
|
|
||||||
pathlen = strlen(path);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
info = sudo_ecalloc(1, sizeof(*info));
|
info = sudo_emalloc(sizeof(*info));
|
||||||
info->symbol_name = sudo_estrndup(name, namelen);
|
info->symbol_name = sudo_estrndup(symbol, symlen);
|
||||||
info->path = sudo_estrndup(path, pathlen);
|
info->path = sudo_estrndup(path, pathlen);
|
||||||
info->options = options;
|
info->options = options;
|
||||||
info->lineno = conf_lineno;
|
info->lineno = lineno;
|
||||||
|
TAILQ_INIT(&info->debug_files);
|
||||||
TAILQ_INSERT_TAIL(&sudo_conf_data.plugins, info, entries);
|
TAILQ_INSERT_TAIL(&sudo_conf_data.plugins, info, entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Initialize debugging subsystem for the running program.
|
||||||
|
* Also stores plugin-specific debug info in sudo_conf_data.plugins.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
set_debugging(const char *conf_file)
|
||||||
|
{
|
||||||
|
struct sudo_conf_debug *debug_spec;
|
||||||
|
struct plugin_info *plugin_info;
|
||||||
|
const char *progname;
|
||||||
|
size_t prognamelen;
|
||||||
|
debug_decl(main, SUDO_DEBUG_UTIL)
|
||||||
|
|
||||||
|
progname = getprogname();
|
||||||
|
prognamelen = strlen(progname);
|
||||||
|
if (prognamelen > 4 && strcmp(progname + 4, "edit") == 0)
|
||||||
|
prognamelen -= 4;
|
||||||
|
TAILQ_FOREACH(debug_spec, &sudo_conf_data.debugging, entries) {
|
||||||
|
/* XXX - only uses last matching Debug entry */
|
||||||
|
if (strncmp(debug_spec->progname, progname, prognamelen) == 0 &&
|
||||||
|
debug_spec->progname[prognamelen] == '\0') {
|
||||||
|
sudo_debug_init(TAILQ_LAST(&debug_spec->debug_files, sudo_conf_debug_file_list)->debug_file, TAILQ_LAST(&debug_spec->debug_files, sudo_conf_debug_file_list)->debug_flags);
|
||||||
|
sudo_debug_enter(__func__, __FILE__, __LINE__, sudo_debug_subsys);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
/* Move debug_files to plugin if it matches. */
|
||||||
|
TAILQ_FOREACH(plugin_info, &sudo_conf_data.plugins, entries) {
|
||||||
|
const char *plugin_name = plugin_info->path;
|
||||||
|
if (debug_spec->progname[0] != '/') {
|
||||||
|
/* Match basename(path). */
|
||||||
|
plugin_name = strrchr(plugin_info->path, '/');
|
||||||
|
if (plugin_name++ == NULL)
|
||||||
|
plugin_name = plugin_info->path;
|
||||||
|
}
|
||||||
|
if (strcmp(debug_spec->progname, plugin_name) == 0) {
|
||||||
|
/* Move debug_files into plugin_info. */
|
||||||
|
TAILQ_SWAP(&plugin_info->debug_files, &debug_spec->debug_files,
|
||||||
|
sudo_debug_file, entries);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* XXX - free up remaining structs */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Update path settings.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
set_paths(const char *conf_file)
|
||||||
|
{
|
||||||
|
struct sudo_conf_setting *path_spec, *next;
|
||||||
|
unsigned int i;
|
||||||
|
debug_decl(sudo_conf_set_paths, SUDO_DEBUG_UTIL)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Store matching paths in sudo_conf_data.path_table.
|
||||||
|
*/
|
||||||
|
TAILQ_FOREACH_SAFE(path_spec, &sudo_conf_data.paths, entries, next) {
|
||||||
|
TAILQ_REMOVE(&sudo_conf_data.paths, path_spec, entries);
|
||||||
|
/* Store path in sudo_conf_data, ignoring unsupported paths. */
|
||||||
|
for (i = 0; sudo_conf_data.path_table[i].pname != NULL; i++) {
|
||||||
|
if (strcmp(path_spec->name, sudo_conf_data.path_table[i].pname) == 0) {
|
||||||
|
sudo_conf_data.path_table[i].pval = path_spec->value;
|
||||||
|
sudo_debug_printf(SUDO_DEBUG_INFO,
|
||||||
|
"%s: %s:%u: path %s=%s\n", __func__, conf_file,
|
||||||
|
path_spec->lineno, path_spec->name, path_spec->value);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (sudo_conf_data.path_table[i].pname == NULL) {
|
||||||
|
/* not found */
|
||||||
|
sudo_debug_printf(SUDO_DEBUG_WARN,
|
||||||
|
"%s: %s:%u: unknown path %s=%s\n", __func__, conf_file,
|
||||||
|
path_spec->lineno, path_spec->name, path_spec->value);
|
||||||
|
sudo_efree(path_spec->value);
|
||||||
|
}
|
||||||
|
sudo_efree(path_spec->name);
|
||||||
|
sudo_efree(path_spec);
|
||||||
|
}
|
||||||
|
TAILQ_INIT(&sudo_conf_data.paths);
|
||||||
|
debug_return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Update variable settings.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
set_variables(const char *conf_file)
|
||||||
|
{
|
||||||
|
struct sudo_conf_setting *setting, *next;
|
||||||
|
struct sudo_conf_var_table *var;
|
||||||
|
debug_decl(sudo_conf_set_variables, SUDO_DEBUG_UTIL)
|
||||||
|
|
||||||
|
TAILQ_FOREACH_SAFE(setting, &sudo_conf_data.settings, entries, next) {
|
||||||
|
for (var = sudo_conf_var_table; var->name != NULL; var++) {
|
||||||
|
if (strcmp(setting->name, var->name) == 0) {
|
||||||
|
if (var->setter(setting->value, conf_file, setting->lineno)) {
|
||||||
|
sudo_debug_printf(SUDO_DEBUG_INFO,
|
||||||
|
"%s: %s:%u: var %s=%s\n", __func__, conf_file,
|
||||||
|
setting->lineno, setting->name, setting->value);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (var->name == NULL) {
|
||||||
|
/* not found */
|
||||||
|
sudo_debug_printf(SUDO_DEBUG_WARN,
|
||||||
|
"%s: %s:%u: unknown var %s=%s\n", __func__, conf_file,
|
||||||
|
setting->lineno, setting->name, setting->value);
|
||||||
|
}
|
||||||
|
sudo_efree(setting->name);
|
||||||
|
sudo_efree(setting->value);
|
||||||
|
sudo_efree(setting);
|
||||||
|
}
|
||||||
|
TAILQ_INIT(&sudo_conf_data.settings);
|
||||||
|
debug_return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool
|
||||||
|
set_var_disable_coredump(const char *entry, const char *conf_file,
|
||||||
|
unsigned int conf_lineno)
|
||||||
|
{
|
||||||
|
int val = sudo_strtobool(entry);
|
||||||
|
|
||||||
|
if (val == -1)
|
||||||
|
return false;
|
||||||
|
sudo_conf_data.disable_coredump = val;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool
|
||||||
|
set_var_group_source(const char *strval, const char *conf_file,
|
||||||
|
unsigned int conf_lineno)
|
||||||
|
{
|
||||||
|
if (strcasecmp(strval, "adaptive") == 0) {
|
||||||
|
sudo_conf_data.group_source = GROUP_SOURCE_ADAPTIVE;
|
||||||
|
} else if (strcasecmp(strval, "static") == 0) {
|
||||||
|
sudo_conf_data.group_source = GROUP_SOURCE_STATIC;
|
||||||
|
} else if (strcasecmp(strval, "dynamic") == 0) {
|
||||||
|
sudo_conf_data.group_source = GROUP_SOURCE_DYNAMIC;
|
||||||
|
} else {
|
||||||
|
sudo_warnx(U_("unsupported group source `%s' in %s, line %d"), strval,
|
||||||
|
conf_file, conf_lineno);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool
|
||||||
|
set_var_max_groups(const char *strval, const char *conf_file,
|
||||||
|
unsigned int conf_lineno)
|
||||||
|
{
|
||||||
|
int max_groups;
|
||||||
|
|
||||||
|
max_groups = strtonum(strval, 1, INT_MAX, NULL);
|
||||||
|
if (max_groups <= 0) {
|
||||||
|
sudo_warnx(U_("invalid max groups `%s' in %s, line %d"), strval,
|
||||||
|
conf_file, conf_lineno);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
sudo_conf_data.max_groups = max_groups;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool
|
||||||
|
set_var_probe_interfaces(const char *strval, const char *conf_file,
|
||||||
|
unsigned int conf_lineno)
|
||||||
|
{
|
||||||
|
int val = sudo_strtobool(strval);
|
||||||
|
|
||||||
|
if (val == -1)
|
||||||
|
return false;
|
||||||
|
sudo_conf_data.probe_interfaces = val;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
sudo_conf_askpass_path_v1(void)
|
sudo_conf_askpass_path_v1(void)
|
||||||
{
|
{
|
||||||
return sudo_conf_data.paths[SUDO_CONF_ASKPASS_IDX].pval;
|
return sudo_conf_data.path_table[SUDO_CONF_ASKPASS_IDX].pval;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
sudo_conf_sesh_path_v1(void)
|
sudo_conf_sesh_path_v1(void)
|
||||||
{
|
{
|
||||||
return sudo_conf_data.paths[SUDO_CONF_SESH_IDX].pval;
|
return sudo_conf_data.path_table[SUDO_CONF_SESH_IDX].pval;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef _PATH_SUDO_NOEXEC
|
#ifdef _PATH_SUDO_NOEXEC
|
||||||
const char *
|
const char *
|
||||||
sudo_conf_noexec_path_v1(void)
|
sudo_conf_noexec_path_v1(void)
|
||||||
{
|
{
|
||||||
return sudo_conf_data.paths[SUDO_CONF_NOEXEC_IDX].pval;
|
return sudo_conf_data.path_table[SUDO_CONF_NOEXEC_IDX].pval;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -339,16 +528,10 @@ sudo_conf_noexec_path_v1(void)
|
|||||||
const char *
|
const char *
|
||||||
sudo_conf_plugin_dir_path_v1(void)
|
sudo_conf_plugin_dir_path_v1(void)
|
||||||
{
|
{
|
||||||
return sudo_conf_data.paths[SUDO_CONF_PLUGIN_IDX].pval;
|
return sudo_conf_data.path_table[SUDO_CONF_PLUGIN_IDX].pval;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
const char *
|
|
||||||
sudo_conf_debug_flags_v1(void)
|
|
||||||
{
|
|
||||||
return sudo_conf_data.debug_flags;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
sudo_conf_group_source_v1(void)
|
sudo_conf_group_source_v1(void)
|
||||||
{
|
{
|
||||||
@@ -367,6 +550,12 @@ sudo_conf_plugins_v1(void)
|
|||||||
return &sudo_conf_data.plugins;
|
return &sudo_conf_data.plugins;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct sudo_conf_debug_list *
|
||||||
|
sudo_conf_debugging_v1(void)
|
||||||
|
{
|
||||||
|
return &sudo_conf_data.debugging;
|
||||||
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
sudo_conf_disable_coredump_v1(void)
|
sudo_conf_disable_coredump_v1(void)
|
||||||
{
|
{
|
||||||
@@ -390,6 +579,7 @@ sudo_conf_read_v1(const char *conf_file)
|
|||||||
FILE *fp;
|
FILE *fp;
|
||||||
char *cp, *line = NULL;
|
char *cp, *line = NULL;
|
||||||
char *prev_locale = sudo_estrdup(setlocale(LC_ALL, NULL));
|
char *prev_locale = sudo_estrdup(setlocale(LC_ALL, NULL));
|
||||||
|
unsigned int conf_lineno = 0;
|
||||||
size_t linesize = 0;
|
size_t linesize = 0;
|
||||||
|
|
||||||
/* Parse sudo.conf in the "C" locale. */
|
/* Parse sudo.conf in the "C" locale. */
|
||||||
@@ -431,7 +621,6 @@ sudo_conf_read_v1(const char *conf_file)
|
|||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
conf_lineno = 0;
|
|
||||||
while (sudo_parseln(&line, &linesize, &conf_lineno, fp) != -1) {
|
while (sudo_parseln(&line, &linesize, &conf_lineno, fp) != -1) {
|
||||||
if (*(cp = line) == '\0')
|
if (*(cp = line) == '\0')
|
||||||
continue; /* empty line or comment */
|
continue; /* empty line or comment */
|
||||||
@@ -442,13 +631,21 @@ sudo_conf_read_v1(const char *conf_file)
|
|||||||
cp += cur->namelen;
|
cp += cur->namelen;
|
||||||
while (isblank((unsigned char)*cp))
|
while (isblank((unsigned char)*cp))
|
||||||
cp++;
|
cp++;
|
||||||
cur->setter(cp, conf_file);
|
cur->parser(cp, conf_lineno);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
free(line);
|
free(line);
|
||||||
|
|
||||||
|
/* First, init the debug system. */
|
||||||
|
set_debugging(conf_file);
|
||||||
|
|
||||||
|
/* Then set paths and variables. */
|
||||||
|
set_paths(conf_file);
|
||||||
|
set_variables(conf_file);
|
||||||
|
|
||||||
done:
|
done:
|
||||||
/* Restore locale if needed. */
|
/* Restore locale if needed. */
|
||||||
if (prev_locale[0] != 'C' || prev_locale[1] != '\0')
|
if (prev_locale[0] != 'C' || prev_locale[1] != '\0')
|
||||||
|
@@ -54,6 +54,7 @@
|
|||||||
#include "sudo_alloc.h"
|
#include "sudo_alloc.h"
|
||||||
#include "sudo_fatal.h"
|
#include "sudo_fatal.h"
|
||||||
#include "sudo_plugin.h"
|
#include "sudo_plugin.h"
|
||||||
|
#include "sudo_conf.h"
|
||||||
#include "sudo_debug.h"
|
#include "sudo_debug.h"
|
||||||
#include "sudo_util.h"
|
#include "sudo_util.h"
|
||||||
|
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
@COMPAT_EXP@
|
@COMPAT_EXP@
|
||||||
initprogname
|
initprogname
|
||||||
sudo_conf_askpass_path_v1
|
sudo_conf_askpass_path_v1
|
||||||
sudo_conf_debug_flags_v1
|
sudo_conf_debugging_v1
|
||||||
sudo_conf_disable_coredump_v1
|
sudo_conf_disable_coredump_v1
|
||||||
sudo_conf_group_source_v1
|
sudo_conf_group_source_v1
|
||||||
sudo_conf_max_groups_v1
|
sudo_conf_max_groups_v1
|
||||||
@@ -88,5 +88,5 @@ sudo_vfatalx_nodebug_v1
|
|||||||
sudo_vwarn_nodebug_v1
|
sudo_vwarn_nodebug_v1
|
||||||
sudo_vwarnx_nodebug_v1
|
sudo_vwarnx_nodebug_v1
|
||||||
sudo_warn_nodebug_v1
|
sudo_warn_nodebug_v1
|
||||||
sudo_warnx_nodebug_v1
|
|
||||||
sudo_warn_set_conversation_v1
|
sudo_warn_set_conversation_v1
|
||||||
|
sudo_warnx_nodebug_v1
|
||||||
|
@@ -455,24 +455,24 @@ cleandir: realclean
|
|||||||
|
|
||||||
# Autogenerated dependencies, do not modify
|
# Autogenerated dependencies, do not modify
|
||||||
afs.lo: $(authdir)/afs.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
afs.lo: $(authdir)/afs.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/afs.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/afs.c
|
||||||
aix_auth.lo: $(authdir)/aix_auth.c $(devdir)/def_data.h \
|
aix_auth.lo: $(authdir)/aix_auth.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/aix_auth.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/aix_auth.c
|
||||||
alias.lo: $(srcdir)/alias.c $(devdir)/def_data.h $(devdir)/gram.h \
|
alias.lo: $(srcdir)/alias.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
@@ -481,33 +481,33 @@ alias.lo: $(srcdir)/alias.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/alias.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/alias.c
|
||||||
audit.lo: $(srcdir)/audit.c $(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
audit.lo: $(srcdir)/audit.c $(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_gettext.h \
|
||||||
$(srcdir)/bsm_audit.h $(srcdir)/linux_audit.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(srcdir)/bsm_audit.h $(srcdir)/linux_audit.h \
|
||||||
$(srcdir)/solaris_audit.h $(top_builddir)/config.h
|
$(srcdir)/logging.h $(srcdir)/solaris_audit.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/audit.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/audit.c
|
||||||
base64.lo: $(srcdir)/base64.c $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
base64.lo: $(srcdir)/base64.c $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/base64.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/base64.c
|
||||||
base64.o: base64.lo
|
base64.o: base64.lo
|
||||||
boottime.lo: $(srcdir)/boottime.c $(incdir)/compat/stdbool.h \
|
boottime.lo: $(srcdir)/boottime.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/boottime.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/boottime.c
|
||||||
bsdauth.lo: $(authdir)/bsdauth.c $(devdir)/def_data.h \
|
bsdauth.lo: $(authdir)/bsdauth.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/bsdauth.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/bsdauth.c
|
||||||
bsm_audit.lo: $(srcdir)/bsm_audit.c $(incdir)/sudo_compat.h \
|
bsm_audit.lo: $(srcdir)/bsm_audit.c $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(srcdir)/bsm_audit.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_queue.h \
|
||||||
$(top_builddir)/config.h
|
$(srcdir)/bsm_audit.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/bsm_audit.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/bsm_audit.c
|
||||||
check.lo: $(srcdir)/check.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
check.lo: $(srcdir)/check.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/check.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/check.h \
|
||||||
@@ -517,12 +517,12 @@ check.lo: $(srcdir)/check.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/check.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/check.c
|
||||||
check_addr.o: $(srcdir)/regress/parser/check_addr.c $(devdir)/def_data.h \
|
check_addr.o: $(srcdir)/regress/parser/check_addr.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/interfaces.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
$(srcdir)/defaults.h $(srcdir)/interfaces.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/parser/check_addr.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/parser/check_addr.c
|
||||||
check_base64.o: $(srcdir)/regress/parser/check_base64.c \
|
check_base64.o: $(srcdir)/regress/parser/check_base64.c \
|
||||||
@@ -544,13 +544,13 @@ check_hexchar.o: $(srcdir)/regress/parser/check_hexchar.c \
|
|||||||
check_iolog_path.o: $(srcdir)/regress/iolog_path/check_iolog_path.c \
|
check_iolog_path.o: $(srcdir)/regress/iolog_path/check_iolog_path.c \
|
||||||
$(devdir)/def_data.c $(devdir)/def_data.h \
|
$(devdir)/def_data.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/iolog_path/check_iolog_path.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/iolog_path/check_iolog_path.c
|
||||||
check_symbols.o: $(srcdir)/regress/check_symbols/check_symbols.c \
|
check_symbols.o: $(srcdir)/regress/check_symbols/check_symbols.c \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_compat.h \
|
||||||
@@ -563,8 +563,8 @@ check_wrap.o: $(srcdir)/regress/logging/check_wrap.c \
|
|||||||
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
$(incdir)/sudo_util.h $(top_builddir)/config.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/logging/check_wrap.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/regress/logging/check_wrap.c
|
||||||
dce.lo: $(authdir)/dce.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
dce.lo: $(authdir)/dce.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
@@ -572,95 +572,98 @@ dce.lo: $(authdir)/dce.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
defaults.lo: $(srcdir)/defaults.c $(devdir)/def_data.c $(devdir)/def_data.h \
|
defaults.lo: $(srcdir)/defaults.c $(devdir)/def_data.c $(devdir)/def_data.h \
|
||||||
$(devdir)/gram.h $(incdir)/compat/stdbool.h \
|
$(devdir)/gram.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/parse.h $(srcdir)/sudo_nss.h \
|
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/defaults.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/defaults.c
|
||||||
env.lo: $(srcdir)/env.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
env.lo: $(srcdir)/env.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/env.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/env.c
|
||||||
find_path.lo: $(srcdir)/find_path.c $(devdir)/def_data.h \
|
find_path.lo: $(srcdir)/find_path.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/find_path.c
|
|
||||||
find_path.o: find_path.lo
|
|
||||||
fwtk.lo: $(authdir)/fwtk.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
|
||||||
$(top_builddir)/pathnames.h
|
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/fwtk.c
|
|
||||||
getdate.o: $(devdir)/getdate.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/getdate.c
|
|
||||||
getspwuid.lo: $(srcdir)/getspwuid.c $(devdir)/def_data.h \
|
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/getspwuid.c
|
|
||||||
goodpath.lo: $(srcdir)/goodpath.c $(devdir)/def_data.h \
|
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
|
||||||
$(top_builddir)/pathnames.h
|
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/goodpath.c
|
|
||||||
goodpath.o: goodpath.lo
|
|
||||||
gram.lo: $(devdir)/gram.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(srcdir)/toke.h \
|
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/gram.c
|
|
||||||
group_plugin.lo: $(srcdir)/group_plugin.c $(devdir)/def_data.h \
|
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
|
||||||
$(incdir)/sudo_dso.h $(incdir)/sudo_fatal.h \
|
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/pathnames.h
|
||||||
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/find_path.c
|
||||||
|
find_path.o: find_path.lo
|
||||||
|
fwtk.lo: $(authdir)/fwtk.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/fwtk.c
|
||||||
|
getdate.o: $(devdir)/getdate.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
||||||
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/getdate.c
|
||||||
|
getspwuid.lo: $(srcdir)/getspwuid.c $(devdir)/def_data.h \
|
||||||
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/getspwuid.c
|
||||||
|
goodpath.lo: $(srcdir)/goodpath.c $(devdir)/def_data.h \
|
||||||
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/goodpath.c
|
||||||
|
goodpath.o: goodpath.lo
|
||||||
|
gram.lo: $(devdir)/gram.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
|
$(srcdir)/logging.h $(srcdir)/parse.h $(srcdir)/sudo_nss.h \
|
||||||
|
$(srcdir)/sudoers.h $(srcdir)/toke.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/gram.c
|
||||||
|
group_plugin.lo: $(srcdir)/group_plugin.c $(devdir)/def_data.h \
|
||||||
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
|
$(incdir)/sudo_debug.h $(incdir)/sudo_dso.h \
|
||||||
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
|
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/group_plugin.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/group_plugin.c
|
||||||
group_plugin.o: group_plugin.lo
|
group_plugin.o: group_plugin.lo
|
||||||
hexchar.lo: $(srcdir)/hexchar.c $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
hexchar.lo: $(srcdir)/hexchar.c $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/hexchar.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/hexchar.c
|
||||||
hexchar.o: hexchar.lo
|
hexchar.o: hexchar.lo
|
||||||
interfaces.lo: $(srcdir)/interfaces.c $(devdir)/def_data.h \
|
interfaces.lo: $(srcdir)/interfaces.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/interfaces.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/interfaces.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/interfaces.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/interfaces.c
|
||||||
interfaces.o: interfaces.lo
|
interfaces.o: interfaces.lo
|
||||||
iolog.lo: $(srcdir)/iolog.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
iolog.lo: $(srcdir)/iolog.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
@@ -670,16 +673,17 @@ iolog.lo: $(srcdir)/iolog.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/iolog.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/iolog.c
|
||||||
iolog_path.lo: $(srcdir)/iolog_path.c $(devdir)/def_data.h \
|
iolog_path.lo: $(srcdir)/iolog_path.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/iolog_path.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/iolog_path.c
|
||||||
iolog_path.o: iolog_path.lo
|
iolog_path.o: iolog_path.lo
|
||||||
kerb5.lo: $(authdir)/kerb5.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
kerb5.lo: $(authdir)/kerb5.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
@@ -687,17 +691,19 @@ kerb5.lo: $(authdir)/kerb5.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/kerb5.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/kerb5.c
|
||||||
ldap.lo: $(srcdir)/ldap.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
ldap.lo: $(srcdir)/ldap.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_dso.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_dso.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_lbuf.h $(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_lbuf.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/ldap.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/ldap.c
|
||||||
linux_audit.lo: $(srcdir)/linux_audit.c $(incdir)/sudo_alloc.h \
|
linux_audit.lo: $(srcdir)/linux_audit.c $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(srcdir)/linux_audit.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(srcdir)/linux_audit.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/linux_audit.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/linux_audit.c
|
||||||
locale.lo: $(srcdir)/locale.c $(incdir)/compat/stdbool.h \
|
locale.lo: $(srcdir)/locale.c $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
@@ -707,27 +713,27 @@ locale.lo: $(srcdir)/locale.c $(incdir)/compat/stdbool.h \
|
|||||||
locale.o: locale.lo
|
locale.o: locale.lo
|
||||||
logging.lo: $(srcdir)/logging.c $(devdir)/def_data.h \
|
logging.lo: $(srcdir)/logging.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/logging.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/logging.c
|
||||||
logwrap.lo: $(srcdir)/logwrap.c $(devdir)/def_data.h \
|
logwrap.lo: $(srcdir)/logwrap.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/logwrap.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/logwrap.c
|
||||||
logwrap.o: logwrap.lo
|
logwrap.o: logwrap.lo
|
||||||
match.lo: $(srcdir)/match.c $(devdir)/def_data.h $(devdir)/gram.h \
|
match.lo: $(srcdir)/match.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/fnmatch.h $(incdir)/compat/glob.h \
|
$(incdir)/compat/fnmatch.h $(incdir)/compat/glob.h \
|
||||||
$(incdir)/compat/sha2.h $(incdir)/compat/stdbool.h \
|
$(incdir)/compat/sha2.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
@@ -737,13 +743,13 @@ match.lo: $(srcdir)/match.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/match.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/match.c
|
||||||
match_addr.lo: $(srcdir)/match_addr.c $(devdir)/def_data.h \
|
match_addr.lo: $(srcdir)/match_addr.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/interfaces.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/interfaces.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/match_addr.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/match_addr.c
|
||||||
match_addr.o: match_addr.lo
|
match_addr.o: match_addr.lo
|
||||||
net_ifs.o: $(top_srcdir)/src/net_ifs.c $(incdir)/compat/stdbool.h \
|
net_ifs.o: $(top_srcdir)/src/net_ifs.c $(incdir)/compat/stdbool.h \
|
||||||
@@ -753,15 +759,15 @@ net_ifs.o: $(top_srcdir)/src/net_ifs.c $(incdir)/compat/stdbool.h \
|
|||||||
$(top_builddir)/config.h
|
$(top_builddir)/config.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(top_srcdir)/src/net_ifs.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(top_srcdir)/src/net_ifs.c
|
||||||
pam.lo: $(authdir)/pam.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
pam.lo: $(authdir)/pam.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/pam.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/pam.c
|
||||||
parse.lo: $(srcdir)/parse.c $(devdir)/def_data.h $(devdir)/gram.h \
|
parse.lo: $(srcdir)/parse.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_lbuf.h $(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_lbuf.h $(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
||||||
@@ -770,7 +776,7 @@ parse.lo: $(srcdir)/parse.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/parse.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/parse.c
|
||||||
passwd.lo: $(authdir)/passwd.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
passwd.lo: $(authdir)/passwd.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
@@ -778,7 +784,7 @@ passwd.lo: $(authdir)/passwd.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/passwd.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/passwd.c
|
||||||
policy.lo: $(srcdir)/policy.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
policy.lo: $(srcdir)/policy.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/interfaces.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/interfaces.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
@@ -787,7 +793,7 @@ policy.lo: $(srcdir)/policy.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/policy.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/policy.c
|
||||||
prompt.lo: $(srcdir)/prompt.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
prompt.lo: $(srcdir)/prompt.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
@@ -795,7 +801,7 @@ prompt.lo: $(srcdir)/prompt.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/prompt.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/prompt.c
|
||||||
pwutil.lo: $(srcdir)/pwutil.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
pwutil.lo: $(srcdir)/pwutil.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/pwutil.h $(srcdir)/redblack.h \
|
$(srcdir)/logging.h $(srcdir)/pwutil.h $(srcdir)/redblack.h \
|
||||||
@@ -805,86 +811,93 @@ pwutil.lo: $(srcdir)/pwutil.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
|||||||
pwutil.o: pwutil.lo
|
pwutil.o: pwutil.lo
|
||||||
pwutil_impl.lo: $(srcdir)/pwutil_impl.c $(devdir)/def_data.h \
|
pwutil_impl.lo: $(srcdir)/pwutil_impl.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/pwutil.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/pwutil.h \
|
||||||
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/pwutil_impl.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/pwutil_impl.c
|
||||||
pwutil_impl.o: pwutil_impl.lo
|
pwutil_impl.o: pwutil_impl.lo
|
||||||
redblack.lo: $(srcdir)/redblack.c $(incdir)/sudo_alloc.h \
|
redblack.lo: $(srcdir)/redblack.c $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
||||||
$(srcdir)/redblack.h $(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(srcdir)/redblack.h \
|
||||||
|
$(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/redblack.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/redblack.c
|
||||||
redblack.o: redblack.lo
|
redblack.o: redblack.lo
|
||||||
rfc1938.lo: $(authdir)/rfc1938.c $(devdir)/def_data.h \
|
rfc1938.lo: $(authdir)/rfc1938.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/rfc1938.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/rfc1938.c
|
||||||
secureware.lo: $(authdir)/secureware.c $(devdir)/def_data.h \
|
secureware.lo: $(authdir)/secureware.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/secureware.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/secureware.c
|
||||||
securid5.lo: $(authdir)/securid5.c $(devdir)/def_data.h \
|
securid5.lo: $(authdir)/securid5.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/securid5.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/securid5.c
|
||||||
set_perms.lo: $(srcdir)/set_perms.c $(devdir)/def_data.h \
|
set_perms.lo: $(srcdir)/set_perms.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/set_perms.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/set_perms.c
|
||||||
sia.lo: $(authdir)/sia.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
sia.lo: $(authdir)/sia.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/sia.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/sia.c
|
||||||
solaris_audit.lo: $(srcdir)/solaris_audit.c $(devdir)/def_data.h \
|
solaris_audit.lo: $(srcdir)/solaris_audit.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/solaris_audit.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/solaris_audit.h $(srcdir)/sudo_nss.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/solaris_audit.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/solaris_audit.c
|
||||||
sssd.lo: $(srcdir)/sssd.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
sssd.lo: $(srcdir)/sssd.c $(devdir)/def_data.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_dso.h $(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_dso.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_lbuf.h $(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_lbuf.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sssd.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sssd.c
|
||||||
sudo_auth.lo: $(authdir)/sudo_auth.c $(devdir)/def_data.h \
|
sudo_auth.lo: $(authdir)/sudo_auth.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/ins_2001.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
|
$(srcdir)/defaults.h $(srcdir)/ins_2001.h \
|
||||||
$(srcdir)/ins_classic.h $(srcdir)/ins_csops.h \
|
$(srcdir)/ins_classic.h $(srcdir)/ins_csops.h \
|
||||||
$(srcdir)/ins_goons.h $(srcdir)/insults.h $(srcdir)/logging.h \
|
$(srcdir)/ins_goons.h $(srcdir)/insults.h $(srcdir)/logging.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
@@ -892,26 +905,28 @@ sudo_auth.lo: $(authdir)/sudo_auth.c $(devdir)/def_data.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/sudo_auth.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(authdir)/sudo_auth.c
|
||||||
sudo_nss.lo: $(srcdir)/sudo_nss.c $(devdir)/def_data.h \
|
sudo_nss.lo: $(srcdir)/sudo_nss.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_lbuf.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_lbuf.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_nss.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_nss.c
|
||||||
sudo_printf.o: $(srcdir)/sudo_printf.c $(incdir)/sudo_compat.h \
|
sudo_printf.o: $(srcdir)/sudo_printf.c $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_plugin.h \
|
||||||
$(top_builddir)/config.h
|
$(incdir)/sudo_queue.h $(top_builddir)/config.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_printf.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudo_printf.c
|
||||||
sudoers.lo: $(srcdir)/sudoers.c $(devdir)/def_data.h \
|
sudoers.lo: $(srcdir)/sudoers.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/getaddrinfo.h $(incdir)/compat/stdbool.h \
|
$(incdir)/compat/getaddrinfo.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(srcdir)/auth/sudo_auth.h $(srcdir)/defaults.h \
|
$(incdir)/sudo_util.h $(srcdir)/auth/sudo_auth.h \
|
||||||
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudoers.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/sudoers.c
|
||||||
sudoreplay.o: $(srcdir)/sudoreplay.c $(incdir)/compat/getopt.h \
|
sudoreplay.o: $(srcdir)/sudoreplay.c $(incdir)/compat/getopt.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/compat/timespec.h \
|
$(incdir)/compat/stdbool.h $(incdir)/compat/timespec.h \
|
||||||
@@ -937,19 +952,20 @@ testsudoers.o: $(srcdir)/testsudoers.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
timestamp.lo: $(srcdir)/timestamp.c $(devdir)/def_data.h \
|
timestamp.lo: $(srcdir)/timestamp.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/compat/timespec.h \
|
$(incdir)/compat/stdbool.h $(incdir)/compat/timespec.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h \
|
||||||
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
$(incdir)/sudo_conf.h $(incdir)/sudo_debug.h \
|
||||||
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
||||||
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/check.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/sudo_nss.h \
|
$(incdir)/sudo_util.h $(srcdir)/check.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudoers.h $(top_builddir)/config.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/timestamp.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/timestamp.c
|
||||||
timestr.lo: $(srcdir)/timestr.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
timestr.lo: $(srcdir)/timestr.c $(incdir)/sudo_compat.h $(top_builddir)/config.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/timestr.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/timestr.c
|
||||||
toke.lo: $(devdir)/toke.c $(devdir)/def_data.h $(devdir)/gram.h \
|
toke.lo: $(devdir)/toke.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/sha2.h $(incdir)/compat/stdbool.h \
|
$(incdir)/compat/sha2.h $(incdir)/compat/stdbool.h \
|
||||||
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_alloc.h $(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h $(incdir)/sudo_lbuf.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_lbuf.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(srcdir)/toke.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(srcdir)/toke.h \
|
||||||
@@ -957,23 +973,24 @@ toke.lo: $(devdir)/toke.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/toke.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(devdir)/toke.c
|
||||||
toke_util.lo: $(srcdir)/toke_util.c $(devdir)/def_data.h $(devdir)/gram.h \
|
toke_util.lo: $(srcdir)/toke_util.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
$(srcdir)/toke.h $(top_builddir)/config.h \
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(srcdir)/toke.h \
|
||||||
$(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/toke_util.c
|
$(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/toke_util.c
|
||||||
toke_util.o: toke_util.lo
|
toke_util.o: toke_util.lo
|
||||||
tsgetgrpw.o: $(srcdir)/tsgetgrpw.c $(devdir)/def_data.h \
|
tsgetgrpw.o: $(srcdir)/tsgetgrpw.c $(devdir)/def_data.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h $(srcdir)/defaults.h \
|
||||||
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h $(srcdir)/tsgetgrpw.h \
|
$(srcdir)/logging.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(srcdir)/tsgetgrpw.h $(top_builddir)/config.h \
|
||||||
|
$(top_builddir)/pathnames.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/tsgetgrpw.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/tsgetgrpw.c
|
||||||
visudo.o: $(srcdir)/visudo.c $(devdir)/def_data.h $(devdir)/gram.h \
|
visudo.o: $(srcdir)/visudo.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/getopt.h $(incdir)/compat/stdbool.h \
|
$(incdir)/compat/getopt.h $(incdir)/compat/stdbool.h \
|
||||||
@@ -987,10 +1004,11 @@ visudo.o: $(srcdir)/visudo.c $(devdir)/def_data.h $(devdir)/gram.h \
|
|||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/visudo.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/visudo.c
|
||||||
visudo_json.o: $(srcdir)/visudo_json.c $(devdir)/def_data.h $(devdir)/gram.h \
|
visudo_json.o: $(srcdir)/visudo_json.c $(devdir)/def_data.h $(devdir)/gram.h \
|
||||||
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
$(incdir)/compat/stdbool.h $(incdir)/sudo_alloc.h \
|
||||||
$(incdir)/sudo_compat.h $(incdir)/sudo_debug.h \
|
$(incdir)/sudo_compat.h $(incdir)/sudo_conf.h \
|
||||||
$(incdir)/sudo_fatal.h $(incdir)/sudo_gettext.h \
|
$(incdir)/sudo_debug.h $(incdir)/sudo_fatal.h \
|
||||||
$(incdir)/sudo_plugin.h $(incdir)/sudo_queue.h \
|
$(incdir)/sudo_gettext.h $(incdir)/sudo_plugin.h \
|
||||||
$(incdir)/sudo_util.h $(srcdir)/defaults.h $(srcdir)/logging.h \
|
$(incdir)/sudo_queue.h $(incdir)/sudo_util.h \
|
||||||
$(srcdir)/parse.h $(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
$(srcdir)/defaults.h $(srcdir)/logging.h $(srcdir)/parse.h \
|
||||||
|
$(srcdir)/sudo_nss.h $(srcdir)/sudoers.h \
|
||||||
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
$(top_builddir)/config.h $(top_builddir)/pathnames.h
|
||||||
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/visudo_json.c
|
$(CC) -c $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/visudo_json.c
|
||||||
|
@@ -24,7 +24,6 @@
|
|||||||
#include <bsm/adt_event.h>
|
#include <bsm/adt_event.h>
|
||||||
|
|
||||||
#include "sudoers.h"
|
#include "sudoers.h"
|
||||||
#include "sudo_debug.h"
|
|
||||||
#include "solaris_audit.h"
|
#include "solaris_audit.h"
|
||||||
|
|
||||||
static adt_session_data_t *ah; /* audit session handle */
|
static adt_session_data_t *ah; /* audit session handle */
|
||||||
|
@@ -54,7 +54,6 @@
|
|||||||
#include "parse.h"
|
#include "parse.h"
|
||||||
#include "sudo_lbuf.h"
|
#include "sudo_lbuf.h"
|
||||||
#include "sudo_dso.h"
|
#include "sudo_dso.h"
|
||||||
#include "sudo_debug.h"
|
|
||||||
|
|
||||||
/* SSSD <--> SUDO interface - do not change */
|
/* SSSD <--> SUDO interface - do not change */
|
||||||
struct sss_sudo_attr {
|
struct sss_sudo_attr {
|
||||||
|
@@ -41,6 +41,7 @@
|
|||||||
#include "logging.h"
|
#include "logging.h"
|
||||||
#include "sudo_nss.h"
|
#include "sudo_nss.h"
|
||||||
#include "sudo_plugin.h"
|
#include "sudo_plugin.h"
|
||||||
|
#include "sudo_conf.h"
|
||||||
#include "sudo_debug.h"
|
#include "sudo_debug.h"
|
||||||
#include "sudo_util.h"
|
#include "sudo_util.h"
|
||||||
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2012-2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
* Copyright (c) 2012-2014 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||||
*
|
*
|
||||||
* Permission to use, copy, modify, and distribute this software for any
|
* Permission to use, copy, modify, and distribute this software for any
|
||||||
* purpose with or without fee is hereby granted, provided that the above
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
@@ -39,8 +39,6 @@
|
|||||||
#include "sudo.h"
|
#include "sudo.h"
|
||||||
#include "sudo_plugin.h"
|
#include "sudo_plugin.h"
|
||||||
#include "sudo_plugin_int.h"
|
#include "sudo_plugin_int.h"
|
||||||
#include "sudo_debug.h"
|
|
||||||
#include "sudo_queue.h"
|
|
||||||
|
|
||||||
/* Singly linked hook list. */
|
/* Singly linked hook list. */
|
||||||
struct sudo_hook_entry {
|
struct sudo_hook_entry {
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2009-2013 Todd C. Miller <Todd.Miller@courtesan.com>
|
* Copyright (c) 2009-2014 Todd C. Miller <Todd.Miller@courtesan.com>
|
||||||
*
|
*
|
||||||
* Permission to use, copy, modify, and distribute this software for any
|
* Permission to use, copy, modify, and distribute this software for any
|
||||||
* purpose with or without fee is hereby granted, provided that the above
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
@@ -41,9 +41,7 @@
|
|||||||
#include "sudo.h"
|
#include "sudo.h"
|
||||||
#include "sudo_plugin.h"
|
#include "sudo_plugin.h"
|
||||||
#include "sudo_plugin_int.h"
|
#include "sudo_plugin_int.h"
|
||||||
#include "sudo_conf.h"
|
|
||||||
#include "sudo_dso.h"
|
#include "sudo_dso.h"
|
||||||
#include "sudo_debug.h"
|
|
||||||
|
|
||||||
/* We always use the same name for the sudoers plugin, regardless of the OS */
|
/* We always use the same name for the sudoers plugin, regardless of the OS */
|
||||||
#define SUDOERS_PLUGIN "sudoers.so"
|
#define SUDOERS_PLUGIN "sudoers.so"
|
||||||
@@ -241,6 +239,9 @@ sudo_load_plugin(struct plugin_container *policy_plugin,
|
|||||||
policy_plugin->name = info->symbol_name;
|
policy_plugin->name = info->symbol_name;
|
||||||
policy_plugin->options = info->options;
|
policy_plugin->options = info->options;
|
||||||
policy_plugin->u.generic = plugin;
|
policy_plugin->u.generic = plugin;
|
||||||
|
TAILQ_INIT(&policy_plugin->debug_files);
|
||||||
|
TAILQ_SWAP(&policy_plugin->debug_files, &info->debug_files,
|
||||||
|
sudo_debug_file, entries);
|
||||||
}
|
}
|
||||||
} else if (plugin->type == SUDO_IO_PLUGIN) {
|
} else if (plugin->type == SUDO_IO_PLUGIN) {
|
||||||
/* Check for duplicate entries. */
|
/* Check for duplicate entries. */
|
||||||
@@ -260,6 +261,9 @@ sudo_load_plugin(struct plugin_container *policy_plugin,
|
|||||||
container->name = info->symbol_name;
|
container->name = info->symbol_name;
|
||||||
container->options = info->options;
|
container->options = info->options;
|
||||||
container->u.generic = plugin;
|
container->u.generic = plugin;
|
||||||
|
TAILQ_INIT(&container->debug_files);
|
||||||
|
TAILQ_SWAP(&container->debug_files, &info->debug_files,
|
||||||
|
sudo_debug_file, entries);
|
||||||
TAILQ_INSERT_TAIL(io_plugins, container, entries);
|
TAILQ_INSERT_TAIL(io_plugins, container, entries);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -70,49 +70,47 @@ static struct sudo_settings sudo_settings[] = {
|
|||||||
{ "bsdauth_type" },
|
{ "bsdauth_type" },
|
||||||
#define ARG_LOGIN_CLASS 1
|
#define ARG_LOGIN_CLASS 1
|
||||||
{ "login_class" },
|
{ "login_class" },
|
||||||
#define ARG_DEBUG_FLAGS 2
|
#define ARG_PRESERVE_ENVIRONMENT 2
|
||||||
{ "debug_flags" },
|
|
||||||
#define ARG_PRESERVE_ENVIRONMENT 3
|
|
||||||
{ "preserve_environment" },
|
{ "preserve_environment" },
|
||||||
#define ARG_RUNAS_GROUP 4
|
#define ARG_RUNAS_GROUP 3
|
||||||
{ "runas_group" },
|
{ "runas_group" },
|
||||||
#define ARG_SET_HOME 5
|
#define ARG_SET_HOME 4
|
||||||
{ "set_home" },
|
{ "set_home" },
|
||||||
#define ARG_USER_SHELL 6
|
#define ARG_USER_SHELL 5
|
||||||
{ "run_shell" },
|
{ "run_shell" },
|
||||||
#define ARG_LOGIN_SHELL 7
|
#define ARG_LOGIN_SHELL 6
|
||||||
{ "login_shell" },
|
{ "login_shell" },
|
||||||
#define ARG_IGNORE_TICKET 8
|
#define ARG_IGNORE_TICKET 7
|
||||||
{ "ignore_ticket" },
|
{ "ignore_ticket" },
|
||||||
#define ARG_PROMPT 9
|
#define ARG_PROMPT 8
|
||||||
{ "prompt" },
|
{ "prompt" },
|
||||||
#define ARG_SELINUX_ROLE 10
|
#define ARG_SELINUX_ROLE 9
|
||||||
{ "selinux_role" },
|
{ "selinux_role" },
|
||||||
#define ARG_SELINUX_TYPE 11
|
#define ARG_SELINUX_TYPE 10
|
||||||
{ "selinux_type" },
|
{ "selinux_type" },
|
||||||
#define ARG_RUNAS_USER 12
|
#define ARG_RUNAS_USER 11
|
||||||
{ "runas_user" },
|
{ "runas_user" },
|
||||||
#define ARG_PROGNAME 13
|
#define ARG_PROGNAME 12
|
||||||
{ "progname" },
|
{ "progname" },
|
||||||
#define ARG_IMPLIED_SHELL 14
|
#define ARG_IMPLIED_SHELL 13
|
||||||
{ "implied_shell" },
|
{ "implied_shell" },
|
||||||
#define ARG_PRESERVE_GROUPS 15
|
#define ARG_PRESERVE_GROUPS 14
|
||||||
{ "preserve_groups" },
|
{ "preserve_groups" },
|
||||||
#define ARG_NONINTERACTIVE 16
|
#define ARG_NONINTERACTIVE 15
|
||||||
{ "noninteractive" },
|
{ "noninteractive" },
|
||||||
#define ARG_SUDOEDIT 17
|
#define ARG_SUDOEDIT 16
|
||||||
{ "sudoedit" },
|
{ "sudoedit" },
|
||||||
#define ARG_CLOSEFROM 18
|
#define ARG_CLOSEFROM 17
|
||||||
{ "closefrom" },
|
{ "closefrom" },
|
||||||
#define ARG_NET_ADDRS 19
|
#define ARG_NET_ADDRS 18
|
||||||
{ "network_addrs" },
|
{ "network_addrs" },
|
||||||
#define ARG_MAX_GROUPS 20
|
#define ARG_MAX_GROUPS 19
|
||||||
{ "max_groups" },
|
{ "max_groups" },
|
||||||
#define ARG_PLUGIN_DIR 21
|
#define ARG_PLUGIN_DIR 20
|
||||||
{ "plugin_dir" },
|
{ "plugin_dir" },
|
||||||
#define ARG_REMOTE_HOST 22
|
#define ARG_REMOTE_HOST 21
|
||||||
{ "remote_host" },
|
{ "remote_host" },
|
||||||
#define NUM_SETTINGS 23
|
#define NUM_SETTINGS 22
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -176,7 +174,6 @@ parse_args(int argc, char **argv, int *nargc, char ***nargv,
|
|||||||
char *cp, **env_add;
|
char *cp, **env_add;
|
||||||
const char *runas_user = NULL;
|
const char *runas_user = NULL;
|
||||||
const char *runas_group = NULL;
|
const char *runas_group = NULL;
|
||||||
const char *debug_flags;
|
|
||||||
const char *progname;
|
const char *progname;
|
||||||
int proglen;
|
int proglen;
|
||||||
int nenv = 0;
|
int nenv = 0;
|
||||||
@@ -201,11 +198,6 @@ parse_args(int argc, char **argv, int *nargc, char ***nargv,
|
|||||||
if (get_net_ifs(&cp) > 0)
|
if (get_net_ifs(&cp) > 0)
|
||||||
sudo_settings[ARG_NET_ADDRS].value = cp;
|
sudo_settings[ARG_NET_ADDRS].value = cp;
|
||||||
|
|
||||||
/* Set debug file and flags from sudo.conf. */
|
|
||||||
debug_flags = sudo_conf_debug_flags();
|
|
||||||
if (debug_flags != NULL)
|
|
||||||
sudo_settings[ARG_DEBUG_FLAGS].value = debug_flags;
|
|
||||||
|
|
||||||
/* Set max_groups from sudo.conf. */
|
/* Set max_groups from sudo.conf. */
|
||||||
i = sudo_conf_max_groups();
|
i = sudo_conf_max_groups();
|
||||||
if (i != -1) {
|
if (i != -1) {
|
||||||
|
35
src/sudo.c
35
src/sudo.c
@@ -1084,32 +1084,41 @@ run_command(struct command_details *details)
|
|||||||
*/
|
*/
|
||||||
static char **
|
static char **
|
||||||
format_plugin_settings(struct plugin_container *plugin,
|
format_plugin_settings(struct plugin_container *plugin,
|
||||||
struct sudo_settings *settings)
|
struct sudo_settings *sudo_settings)
|
||||||
{
|
{
|
||||||
|
size_t plugin_settings_size, num_plugin_settings = 0;
|
||||||
|
struct sudo_debug_file *debug_file;
|
||||||
|
struct sudo_settings *setting;
|
||||||
char **plugin_settings;
|
char **plugin_settings;
|
||||||
size_t plugin_settings_size = 32, num_plugin_settings = 0;
|
|
||||||
debug_decl(format_plugin_settings, SUDO_DEBUG_PCOMM)
|
debug_decl(format_plugin_settings, SUDO_DEBUG_PCOMM)
|
||||||
|
|
||||||
|
/* XXX - should use exact plugin_settings_size */
|
||||||
|
/* Determine sudo_settings array size (including plugin_path and NULL) */
|
||||||
|
plugin_settings_size = 2;
|
||||||
|
for (setting = sudo_settings; setting->name != NULL; setting++)
|
||||||
|
plugin_settings_size++;
|
||||||
|
TAILQ_FOREACH(debug_file, &plugin->debug_files, entries)
|
||||||
|
plugin_settings_size++;
|
||||||
|
|
||||||
|
/* Allocate and fill in. */
|
||||||
plugin_settings = sudo_emallocarray(plugin_settings_size, sizeof(char *));
|
plugin_settings = sudo_emallocarray(plugin_settings_size, sizeof(char *));
|
||||||
plugin_settings[num_plugin_settings++] =
|
plugin_settings[num_plugin_settings++] =
|
||||||
sudo_new_key_val("plugin_path", plugin->path);
|
sudo_new_key_val("plugin_path", plugin->path);
|
||||||
while (settings->name != NULL) {
|
for (setting = sudo_settings; setting->name != NULL; setting++) {
|
||||||
if (settings->value != NULL) {
|
if (setting->value != NULL) {
|
||||||
sudo_debug_printf(SUDO_DEBUG_INFO, "settings: %s=%s",
|
sudo_debug_printf(SUDO_DEBUG_INFO, "settings: %s=%s",
|
||||||
settings->name, settings->value);
|
setting->name, setting->value);
|
||||||
/* Expand plugin_settings as needed. */
|
|
||||||
if (num_plugin_settings == plugin_settings_size) {
|
|
||||||
plugin_settings_size *= 2;
|
|
||||||
plugin_settings = sudo_ereallocarray(plugin_settings,
|
|
||||||
plugin_settings_size, sizeof(char *));
|
|
||||||
}
|
|
||||||
plugin_settings[num_plugin_settings] =
|
plugin_settings[num_plugin_settings] =
|
||||||
sudo_new_key_val(settings->name, settings->value);
|
sudo_new_key_val(setting->name, setting->value);
|
||||||
if (plugin_settings[num_plugin_settings] == NULL)
|
if (plugin_settings[num_plugin_settings] == NULL)
|
||||||
sudo_fatal(NULL);
|
sudo_fatal(NULL);
|
||||||
num_plugin_settings++;
|
num_plugin_settings++;
|
||||||
}
|
}
|
||||||
settings++;
|
}
|
||||||
|
TAILQ_FOREACH(debug_file, &plugin->debug_files, entries) {
|
||||||
|
/* XXX - quote filename? */
|
||||||
|
sudo_easprintf(&plugin_settings[num_plugin_settings++],
|
||||||
|
"debug_flags=%s %s", debug_file->debug_file, debug_file->debug_flags);
|
||||||
}
|
}
|
||||||
plugin_settings[num_plugin_settings] = NULL;
|
plugin_settings[num_plugin_settings] = NULL;
|
||||||
|
|
||||||
|
@@ -82,6 +82,7 @@ struct io_plugin_1_1 {
|
|||||||
*/
|
*/
|
||||||
struct plugin_container {
|
struct plugin_container {
|
||||||
TAILQ_ENTRY(plugin_container) entries;
|
TAILQ_ENTRY(plugin_container) entries;
|
||||||
|
struct sudo_conf_debug_file_list debug_files;
|
||||||
const char *name;
|
const char *name;
|
||||||
const char *path;
|
const char *path;
|
||||||
char * const *options;
|
char * const *options;
|
||||||
|
Reference in New Issue
Block a user