mirror of
https://gitlab.com/apparmor/apparmor
synced 2025-08-31 22:35:35 +00:00
Turn on diff-encoding if the kernel supports it
Signed-off-by: John Johansen <john.johansen@canonical.com> Acked-by: Seth Arnold <seth.arnold@canonical.com>
This commit is contained in:
@@ -298,6 +298,7 @@ extern int net_af_max_override;
|
|||||||
extern int kernel_load;
|
extern int kernel_load;
|
||||||
extern int kernel_supports_network;
|
extern int kernel_supports_network;
|
||||||
extern int kernel_supports_policydb;
|
extern int kernel_supports_policydb;
|
||||||
|
extern int kernel_supports_diff_encode;
|
||||||
extern int kernel_supports_mount;
|
extern int kernel_supports_mount;
|
||||||
extern int kernel_supports_dbus;
|
extern int kernel_supports_dbus;
|
||||||
extern int conf_verbose;
|
extern int conf_verbose;
|
||||||
|
@@ -70,13 +70,14 @@ int kernel_supports_network = 0; /* kernel supports network rules */
|
|||||||
int kernel_supports_policydb = 0; /* kernel supports new policydb */
|
int kernel_supports_policydb = 0; /* kernel supports new policydb */
|
||||||
int kernel_supports_mount = 0; /* kernel supports mount rules */
|
int kernel_supports_mount = 0; /* kernel supports mount rules */
|
||||||
int kernel_supports_dbus = 0; /* kernel supports dbus rules */
|
int kernel_supports_dbus = 0; /* kernel supports dbus rules */
|
||||||
|
int kernel_supports_diff_encode = 0; /* kernel supports diff_encode */
|
||||||
int conf_verbose = 0;
|
int conf_verbose = 0;
|
||||||
int conf_quiet = 0;
|
int conf_quiet = 0;
|
||||||
int names_only = 0;
|
int names_only = 0;
|
||||||
int current_lineno = 1;
|
int current_lineno = 1;
|
||||||
int option = OPTION_ADD;
|
int option = OPTION_ADD;
|
||||||
|
|
||||||
dfaflags_t dfaflags = (dfaflags_t)(DFA_CONTROL_TREE_NORMAL | DFA_CONTROL_TREE_SIMPLE | DFA_CONTROL_MINIMIZE );
|
dfaflags_t dfaflags = (dfaflags_t)(DFA_CONTROL_TREE_NORMAL | DFA_CONTROL_TREE_SIMPLE | DFA_CONTROL_MINIMIZE | DFA_CONTROL_DIFF_ENCODE);
|
||||||
|
|
||||||
char *subdomainbase = NULL;
|
char *subdomainbase = NULL;
|
||||||
const char *progname = __FILE__;
|
const char *progname = __FILE__;
|
||||||
|
@@ -306,6 +306,7 @@ static int handle_flag_table(optflag_table_t *table, const char *optarg,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -847,6 +848,11 @@ static void set_supported_features(void) {
|
|||||||
kernel_supports_mount = 1;
|
kernel_supports_mount = 1;
|
||||||
if (strstr(features_string, "dbus"))
|
if (strstr(features_string, "dbus"))
|
||||||
kernel_supports_dbus = 1;
|
kernel_supports_dbus = 1;
|
||||||
|
if (strstr(features_string, "diff_encode"))
|
||||||
|
kernel_supports_diff_encode = 1;
|
||||||
|
else if (dfaflags & DFA_CONTROL_DIFF_ENCODE)
|
||||||
|
/* clear diff_encode because it is not supported */
|
||||||
|
dfaflags &= ~DFA_CONTROL_DIFF_ENCODE;
|
||||||
}
|
}
|
||||||
|
|
||||||
int process_binary(int option, const char *profilename)
|
int process_binary(int option, const char *profilename)
|
||||||
|
Reference in New Issue
Block a user