mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 08:24:42 +01:00
Merge update translations pot file for C code
The parser and binutils pot file have not been recently refreshed. Update them to current code and add missing pot files for aa_load and aa_status. Also give aa_status base support for translations to populate its pot file. MR: https://gitlab.com/apparmor/apparmor/-/merge_requests/1318 Approved-by: John Johansen <john@jjmx.net> Merged-by: John Johansen <john@jjmx.net>
This commit is contained in:
commit
9fe5a6d853
7 changed files with 487 additions and 124 deletions
|
@ -20,6 +20,8 @@
|
|||
#include <ctype.h>
|
||||
#include <dirent.h>
|
||||
#include <regex.h>
|
||||
#include <libintl.h>
|
||||
#define _(s) gettext(s)
|
||||
|
||||
#include <sys/apparmor.h>
|
||||
#include <sys/apparmor_private.h>
|
||||
|
@ -131,7 +133,7 @@ const char *process_statuses[] = {"enforce", "complain", "prompt", "kill", "unco
|
|||
#define eprintf(...) \
|
||||
do { \
|
||||
if (!quiet) \
|
||||
fprintf(stderr, __VA_ARGS__); \
|
||||
fprintf(stderr, __VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
#define dprintf(...) \
|
||||
|
@ -156,14 +158,14 @@ static int open_profiles(FILE **fp)
|
|||
|
||||
ret = stat("/sys/module/apparmor", &st);
|
||||
if (ret != 0) {
|
||||
eprintf("apparmor not present.\n");
|
||||
eprintf(_("apparmor not present.\n"));
|
||||
return AA_EXIT_DISABLED;
|
||||
}
|
||||
dprintf("apparmor module is loaded.\n");
|
||||
dprintf(_("apparmor module is loaded.\n"));
|
||||
|
||||
ret = aa_find_mountpoint(&apparmorfs);
|
||||
if (ret == -1) {
|
||||
eprintf("apparmor filesystem is not mounted.\n");
|
||||
eprintf(_("apparmor filesystem is not mounted.\n"));
|
||||
return AA_EXIT_NO_CONTROL;
|
||||
}
|
||||
|
||||
|
@ -176,9 +178,9 @@ static int open_profiles(FILE **fp)
|
|||
*fp = fopen(apparmor_profiles, "r");
|
||||
if (*fp == NULL) {
|
||||
if (errno == EACCES) {
|
||||
eprintf("You do not have enough privilege to read the profile set.\n");
|
||||
eprintf(_("You do not have enough privilege to read the profile set.\n"));
|
||||
} else {
|
||||
eprintf("Could not open %s: %s", apparmor_profiles, strerror(errno));
|
||||
eprintf(_("Could not open %s: %s"), apparmor_profiles, strerror(errno));
|
||||
}
|
||||
return AA_EXIT_NO_PERM;
|
||||
}
|
||||
|
@ -351,7 +353,7 @@ static int get_processes(struct profile *profiles,
|
|||
continue;
|
||||
} else if (rc == -1 ||
|
||||
asprintf(&exe, "/proc/%s/exe", entry->d_name) == -1) {
|
||||
eprintf("ERROR: Failed to allocate memory\n");
|
||||
eprintf(_("ERROR: Failed to allocate memory\n"));
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto exit;
|
||||
} else if (mode) {
|
||||
|
@ -374,7 +376,7 @@ static int get_processes(struct profile *profiles,
|
|||
// ensure enough space for NUL terminator
|
||||
real_exe = calloc(PATH_MAX + 1, sizeof(char));
|
||||
if (real_exe == NULL) {
|
||||
eprintf("ERROR: Failed to allocate memory\n");
|
||||
eprintf(_("ERROR: Failed to allocate memory\n"));
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto exit;
|
||||
}
|
||||
|
@ -582,7 +584,7 @@ static int detailed_profiles(FILE *outf, filters_t *filters, bool json,
|
|||
*/
|
||||
subfilters.mode = &mode_filter;
|
||||
if (regcomp(&mode_filter, profile_statuses[i], REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile sub filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile sub filter '%s'\n"),
|
||||
profile_statuses[i]);
|
||||
return AA_EXIT_INTERNAL_ERROR;
|
||||
}
|
||||
|
@ -648,7 +650,7 @@ static int detailed_processes(FILE *outf, filters_t *filters, bool json,
|
|||
*/
|
||||
subfilters.mode = &mode_filter;
|
||||
if (regcomp(&mode_filter, process_statuses[i], REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile sub filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile sub filter '%s'\n"),
|
||||
profile_statuses[i]);
|
||||
return AA_EXIT_INTERNAL_ERROR;
|
||||
}
|
||||
|
@ -710,7 +712,7 @@ exit:
|
|||
|
||||
static int print_legacy(const char *command)
|
||||
{
|
||||
printf("Usage: %s [OPTIONS]\n"
|
||||
printf(_("Usage: %s [OPTIONS]\n"
|
||||
"Legacy options and their equivalent command\n"
|
||||
" --profiled --count --profiles\n"
|
||||
" --enforced --count --profiles --mode=enforced\n"
|
||||
|
@ -718,8 +720,8 @@ static int print_legacy(const char *command)
|
|||
" --kill --count --profiles --mode=kill\n"
|
||||
" --prompt --count --profiles --mode=prompt\n"
|
||||
" --special-unconfined --count --profiles --mode=unconfined\n"
|
||||
" --process-mixed --count --ps --mode=mixed\n",
|
||||
command);
|
||||
" --process-mixed --count --ps --mode=mixed\n"),
|
||||
command);
|
||||
|
||||
exit(0);
|
||||
return 0;
|
||||
|
@ -729,7 +731,7 @@ static int usage_filters(void)
|
|||
{
|
||||
long unsigned int i;
|
||||
|
||||
printf("Usage of filters\n"
|
||||
printf(_("Usage of filters\n"
|
||||
"Filters are used to reduce the output of information to only\n"
|
||||
"those entries that will match the filter. Filters use posix\n"
|
||||
"regular expression syntax. The possible values for exes that\n"
|
||||
|
@ -739,7 +741,7 @@ static int usage_filters(void)
|
|||
" --filter.profiles: regular expression to match displayed profile names\n"
|
||||
" --filter.pid: regular expression to match displayed processes pids\n"
|
||||
" --filter.exe: regular expression to match executable\n"
|
||||
);
|
||||
));
|
||||
for (i = 0; i < ARRAY_SIZE(process_statuses); i++) {
|
||||
printf("%s%s", i ? ", " : "", process_statuses[i]);
|
||||
}
|
||||
|
@ -757,7 +759,7 @@ static int print_usage(const char *command, bool error)
|
|||
status = EXIT_FAILURE;
|
||||
}
|
||||
|
||||
printf("Usage: %s [OPTIONS]\n"
|
||||
printf(_("Usage: %s [OPTIONS]\n"
|
||||
"Displays various information about the currently loaded AppArmor policy.\n"
|
||||
"Default if no options given\n"
|
||||
" --show=all\n\n"
|
||||
|
@ -774,8 +776,8 @@ static int print_usage(const char *command, bool error)
|
|||
" --verbose (default) displays data points about loaded policy set\n"
|
||||
" --quiet don't output error messages\n"
|
||||
" -h[(legacy|filters)] this message, or info on the specified option\n"
|
||||
" --help[=(legacy|filters)] this message, or info on the specified option\n",
|
||||
command);
|
||||
" --help[=(legacy|filters)] this message, or info on the specified option\n"),
|
||||
command);
|
||||
|
||||
exit(status);
|
||||
|
||||
|
@ -851,7 +853,7 @@ static int parse_args(int argc, char **argv)
|
|||
} else if (strcmp(optarg, "filters") == 0) {
|
||||
usage_filters();
|
||||
} else {
|
||||
eprintf("Error: Invalid --help option '%s'.\n", optarg);
|
||||
eprintf(_("Error: Invalid --help option '%s'.\n"), optarg);
|
||||
print_usage(argv[0], true);
|
||||
break;
|
||||
}
|
||||
|
@ -919,7 +921,7 @@ static int parse_args(int argc, char **argv)
|
|||
} else if (strcmp(optarg, "processes") == 0) {
|
||||
opt_show = SHOW_PROCESSES;
|
||||
} else {
|
||||
eprintf("Error: Invalid --show option '%s'.\n", optarg);
|
||||
eprintf(_("Error: Invalid --show option '%s'.\n"), optarg);
|
||||
print_usage(argv[0], true);
|
||||
break;
|
||||
}
|
||||
|
@ -941,7 +943,7 @@ static int parse_args(int argc, char **argv)
|
|||
break;
|
||||
|
||||
default:
|
||||
eprintf("Error: Invalid command.\n");
|
||||
eprintf(_("Error: Invalid command.\n"));
|
||||
print_usage(argv[0], true);
|
||||
break;
|
||||
}
|
||||
|
@ -966,7 +968,7 @@ int main(int argc, char **argv)
|
|||
if (argc > 1) {
|
||||
int pos = parse_args(argc, argv);
|
||||
if (pos < argc) {
|
||||
eprintf("Error: Unknown options.\n");
|
||||
eprintf(_("Error: Unknown options.\n"));
|
||||
print_usage(progname, true);
|
||||
}
|
||||
} else {
|
||||
|
@ -978,24 +980,24 @@ int main(int argc, char **argv)
|
|||
|
||||
init_filters(&filters, &filter_set);
|
||||
if (regcomp(filters.mode, opt_mode, REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile mode filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile mode filter '%s'\n"),
|
||||
opt_mode);
|
||||
return AA_EXIT_INTERNAL_ERROR;
|
||||
}
|
||||
if (regcomp(filters.profile, opt_profiles, REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile profiles filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile profiles filter '%s'\n"),
|
||||
opt_profiles);
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto out;
|
||||
}
|
||||
if (regcomp(filters.pid, opt_pid, REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile ps filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile ps filter '%s'\n"),
|
||||
opt_pid);
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto out;
|
||||
}
|
||||
if (regcomp(filters.exe, opt_exe, REG_NOSUB) != 0) {
|
||||
eprintf("Error: failed to compile exe filter '%s'\n",
|
||||
eprintf(_("Error: failed to compile exe filter '%s'\n"),
|
||||
opt_exe);
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto out;
|
||||
|
@ -1010,7 +1012,7 @@ int main(int argc, char **argv)
|
|||
outf_save = outf;
|
||||
outf = open_memstream(&buffer, &buffer_size);
|
||||
if (!outf) {
|
||||
eprintf("Failed to open memstream: %m\n");
|
||||
eprintf(_("Failed to open memstream: %m\n"));
|
||||
return AA_EXIT_INTERNAL_ERROR;
|
||||
}
|
||||
}
|
||||
|
@ -1021,7 +1023,7 @@ int main(int argc, char **argv)
|
|||
*/
|
||||
ret = get_profiles(fp, &profiles, &nprofiles);
|
||||
if (ret != 0) {
|
||||
eprintf("Failed to get profiles: %d....\n", ret);
|
||||
eprintf(_("Failed to get profiles: %d....\n"), ret);
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -1045,7 +1047,7 @@ int main(int argc, char **argv)
|
|||
|
||||
ret = get_processes(profiles, nprofiles, &processes, &nprocesses);
|
||||
if (ret != 0) {
|
||||
eprintf("Failed to get processes: %d....\n", ret);
|
||||
eprintf(_("Failed to get processes: %d....\n"), ret);
|
||||
} else if (opt_count) {
|
||||
ret = simple_filtered_process_count(outf, &filters,
|
||||
processes, nprocesses);
|
||||
|
@ -1071,14 +1073,14 @@ int main(int argc, char **argv)
|
|||
outf = outf_save;
|
||||
json = cJSON_Parse(buffer);
|
||||
if (!json) {
|
||||
eprintf("Failed to parse json output");
|
||||
eprintf(_("Failed to parse json output"));
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto out;
|
||||
}
|
||||
|
||||
pretty = cJSON_Print(json);
|
||||
if (!pretty) {
|
||||
eprintf("Failed to print pretty json");
|
||||
eprintf(_("Failed to print pretty json"));
|
||||
ret = AA_EXIT_INTERNAL_ERROR;
|
||||
goto out;
|
||||
}
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Canonical Ltd
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
# Translations for aa_enabled
|
||||
# Copyright (C) 2024 Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2020.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2020-10-14 03:52-0700\n"
|
||||
"POT-Creation-Date: 2024-08-31 15:59-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Canonical Ltd
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
# Translations for aa_exec
|
||||
# Copyright (C) 2024 Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2020.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2020-10-14 03:52-0700\n"
|
||||
"POT-Creation-Date: 2024-08-31 15:59-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Canonical Ltd
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
# Translations for aa_features_abi
|
||||
# Copyright (C) 2024 Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2011.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2020-10-14 03:52-0700\n"
|
||||
"POT-Creation-Date: 2024-08-31 15:59-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
34
binutils/po/aa_load.pot
Normal file
34
binutils/po/aa_load.pot
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Translations for aa_load
|
||||
# Copyright (C) 2024 Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2020.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2024-08-31 15:59-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../aa_load.c:40
|
||||
msgid "aa-load: WARN: "
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_load.c:41
|
||||
msgid "aa-load: ERROR: "
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_load.c:51
|
||||
msgid "\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_load.c:52
|
||||
msgid "aa-load: DEBUG: "
|
||||
msgstr ""
|
165
binutils/po/aa_status.pot
Normal file
165
binutils/po/aa_status.pot
Normal file
|
@ -0,0 +1,165 @@
|
|||
# Translations for aa_status
|
||||
# Copyright (C) 2024 Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2024.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2024-08-31 17:49-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../aa_status.c:161
|
||||
msgid "apparmor not present.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:164
|
||||
msgid "apparmor module is loaded.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:168
|
||||
msgid "apparmor filesystem is not mounted.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:181
|
||||
msgid "You do not have enough privilege to read the profile set.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:183
|
||||
#, c-format
|
||||
msgid "Could not open %s: %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:356 ../aa_status.c:379
|
||||
msgid "ERROR: Failed to allocate memory\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:587 ../aa_status.c:653
|
||||
#, c-format
|
||||
msgid "Error: failed to compile sub filter '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:715
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Usage: %s [OPTIONS]\n"
|
||||
"Legacy options and their equivalent command\n"
|
||||
" --profiled --count --profiles\n"
|
||||
" --enforced --count --profiles --mode=enforced\n"
|
||||
" --complaining --count --profiles --mode=complain\n"
|
||||
" --kill --count --profiles --mode=kill\n"
|
||||
" --prompt --count --profiles --mode=prompt\n"
|
||||
" --special-unconfined --count --profiles --mode=unconfined\n"
|
||||
" --process-mixed --count --ps --mode=mixed\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:734
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Usage of filters\n"
|
||||
"Filters are used to reduce the output of information to only\n"
|
||||
"those entries that will match the filter. Filters use posix\n"
|
||||
"regular expression syntax. The possible values for exes that\n"
|
||||
"support filters are below\n"
|
||||
"\n"
|
||||
" --filter.mode: regular expression to match the profile "
|
||||
"mode modes: enforce, complain, kill, unconfined, mixed\n"
|
||||
" --filter.profiles: regular expression to match displayed profile names\n"
|
||||
" --filter.pid: regular expression to match displayed processes pids\n"
|
||||
" --filter.exe: regular expression to match executable\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:762
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Usage: %s [OPTIONS]\n"
|
||||
"Displays various information about the currently loaded AppArmor policy.\n"
|
||||
"Default if no options given\n"
|
||||
" --show=all\n"
|
||||
"\n"
|
||||
"OPTIONS (one only):\n"
|
||||
" --enabled returns error code if AppArmor not enabled\n"
|
||||
" --show=X What information to show. {profiles,processes,all}\n"
|
||||
" --count print the number of entries. Implies --quiet\n"
|
||||
" --filter.mode=filter see filters\n"
|
||||
" --filter.profiles=filter see filters\n"
|
||||
" --filter.pid=filter see filters\n"
|
||||
" --filter.exe=filter see filters\n"
|
||||
" --json displays multiple data points in machine-readable JSON "
|
||||
"format\n"
|
||||
" --pretty-json same data as --json, formatted for human consumption as "
|
||||
"well\n"
|
||||
" --verbose (default) displays data points about loaded policy set\n"
|
||||
" --quiet don't output error messages\n"
|
||||
" -h[(legacy|filters)] this message, or info on the specified option\n"
|
||||
" --help[=(legacy|filters)] this message, or info on the specified option\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:856
|
||||
#, c-format
|
||||
msgid "Error: Invalid --help option '%s'.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:924
|
||||
#, c-format
|
||||
msgid "Error: Invalid --show option '%s'.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:946
|
||||
msgid "Error: Invalid command.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:971
|
||||
msgid "Error: Unknown options.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:983
|
||||
#, c-format
|
||||
msgid "Error: failed to compile mode filter '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:988
|
||||
#, c-format
|
||||
msgid "Error: failed to compile profiles filter '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:994
|
||||
#, c-format
|
||||
msgid "Error: failed to compile ps filter '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1000
|
||||
#, c-format
|
||||
msgid "Error: failed to compile exe filter '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1015
|
||||
#, c-format
|
||||
msgid "Failed to open memstream: %m\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1026
|
||||
#, c-format
|
||||
msgid "Failed to get profiles: %d....\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1050
|
||||
#, c-format
|
||||
msgid "Failed to get processes: %d....\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1076
|
||||
msgid "Failed to parse json output"
|
||||
msgstr ""
|
||||
|
||||
#: ../aa_status.c:1083
|
||||
msgid "Failed to print pretty json"
|
||||
msgstr ""
|
|
@ -1,14 +1,14 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR Canonical Ltd
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
# Translations for apparmor_parser
|
||||
# Copyright (C) 2024 YEAR Canonical Ltd
|
||||
# This file is distributed under the same license as the AppArmor package.
|
||||
# John Johansen <john.johansen@canonical.com>, 2011.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: apparmor@lists.ubuntu.com\n"
|
||||
"POT-Creation-Date: 2020-10-14 03:51-0700\n"
|
||||
"POT-Creation-Date: 2024-08-31 15:55-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -86,37 +86,41 @@ msgid "Permission denied; attempted to load a profile while confined?\n"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:99 ../parser_interface.c:102 ../parser_interface.c:79
|
||||
#: ../parser_interface.c:82
|
||||
#: ../parser_interface.c:82 ../parser_interface.c:84
|
||||
#, c-format
|
||||
msgid "Unknown error (%d): %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:116 ../parser_interface.c:119 ../parser_interface.c:96
|
||||
#: ../parser_interface.c:100
|
||||
#: ../parser_interface.c:100 ../parser_interface.c:102
|
||||
#, c-format
|
||||
msgid "%s: Unable to add \"%s\". "
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:121 ../parser_interface.c:124
|
||||
#: ../parser_interface.c:101 ../parser_interface.c:105
|
||||
#: ../parser_interface.c:107
|
||||
#, c-format
|
||||
msgid "%s: Unable to replace \"%s\". "
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:126 ../parser_interface.c:129
|
||||
#: ../parser_interface.c:106 ../parser_interface.c:110
|
||||
#: ../parser_interface.c:112
|
||||
#, c-format
|
||||
msgid "%s: Unable to remove \"%s\". "
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:131 ../parser_interface.c:134
|
||||
#: ../parser_interface.c:111 ../parser_interface.c:115
|
||||
#: ../parser_interface.c:117
|
||||
#, c-format
|
||||
msgid "%s: Unable to write to stdout\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:135 ../parser_interface.c:138
|
||||
#: ../parser_interface.c:115 ../parser_interface.c:119
|
||||
#: ../parser_interface.c:121
|
||||
#, c-format
|
||||
msgid "%s: Unable to write to output file\n"
|
||||
msgstr ""
|
||||
|
@ -125,24 +129,28 @@ msgstr ""
|
|||
#: ../parser_interface.c:141 ../parser_interface.c:165
|
||||
#: ../parser_interface.c:118 ../parser_interface.c:142
|
||||
#: ../parser_interface.c:123 ../parser_interface.c:147
|
||||
#: ../parser_interface.c:125 ../parser_interface.c:149
|
||||
#, c-format
|
||||
msgid "%s: ASSERT: Invalid option: %d\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:147 ../parser_interface.c:150
|
||||
#: ../parser_interface.c:127 ../parser_interface.c:132
|
||||
#: ../parser_interface.c:134
|
||||
#, c-format
|
||||
msgid "Addition succeeded for \"%s\".\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:151 ../parser_interface.c:154
|
||||
#: ../parser_interface.c:131 ../parser_interface.c:136
|
||||
#: ../parser_interface.c:138
|
||||
#, c-format
|
||||
msgid "Replacement succeeded for \"%s\".\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:155 ../parser_interface.c:158
|
||||
#: ../parser_interface.c:135 ../parser_interface.c:140
|
||||
#: ../parser_interface.c:142
|
||||
#, c-format
|
||||
msgid "Removal succeeded for \"%s\".\n"
|
||||
msgstr ""
|
||||
|
@ -154,6 +162,7 @@ msgstr ""
|
|||
|
||||
#: ../parser_interface.c:656 ../parser_interface.c:658
|
||||
#: ../parser_interface.c:446 ../parser_interface.c:476
|
||||
#: ../parser_interface.c:542
|
||||
#, c-format
|
||||
msgid "profile %s network rules not enforced\n"
|
||||
msgstr ""
|
||||
|
@ -199,16 +208,18 @@ msgstr ""
|
|||
|
||||
#: ../parser_interface.c:839 ../parser_interface.c:831
|
||||
#: ../parser_interface.c:593 ../parser_interface.c:579
|
||||
#: ../parser_interface.c:673
|
||||
#, c-format
|
||||
msgid "%s: Unable to write entire profile entry to cache\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:100 parser_lex.l:163 parser_lex.l:169
|
||||
#: parser_lex.l:100 parser_lex.l:163 parser_lex.l:169 parser_lex.l:192
|
||||
#, c-format
|
||||
msgid "Could not open '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:104 parser_lex.l:167 parser_lex.l:173 parser_lex.l:174
|
||||
#: parser_lex.l:197
|
||||
#, c-format
|
||||
msgid "fstat failed for '%s'"
|
||||
msgstr ""
|
||||
|
@ -223,7 +234,7 @@ msgstr ""
|
|||
msgid "stat failed for '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:155 parser_lex.l:133 parser_lex.l:139
|
||||
#: parser_lex.l:155 parser_lex.l:133 parser_lex.l:139 parser_lex.l:148
|
||||
#, c-format
|
||||
msgid "Could not open '%s' in '%s'"
|
||||
msgstr ""
|
||||
|
@ -235,6 +246,7 @@ msgid "Found unexpected character: '%s'"
|
|||
msgstr ""
|
||||
|
||||
#: parser_lex.l:386 parser_lex.l:418 parser_lex.l:428 parser_lex.l:474
|
||||
#: parser_lex.l:516
|
||||
msgid "Variable declarations do not accept trailing commas"
|
||||
msgstr ""
|
||||
|
||||
|
@ -254,7 +266,7 @@ msgid "%s: Could not allocate memory for subdomainbase mount point\n"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:577 ../parser_main.c:616 ../parser_main.c:479
|
||||
#: ../parser_main.c:1444
|
||||
#: ../parser_main.c:1444 ../parser_main.c:1654
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Warning: unable to find a suitable fs in %s, is it mounted?\n"
|
||||
|
@ -270,7 +282,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:604 ../parser_main.c:642 ../parser_main.c:505
|
||||
#: ../parser_main.c:828
|
||||
#: ../parser_main.c:828 ../parser_main.c:891
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s: Warning! You've set this program setuid root.\n"
|
||||
|
@ -280,6 +292,7 @@ msgstr ""
|
|||
|
||||
#: ../parser_main.c:704 ../parser_main.c:813 ../parser_main.c:836
|
||||
#: ../parser_main.c:946 ../parser_main.c:860 ../parser_main.c:1038
|
||||
#: ../parser_main.c:1127
|
||||
#, c-format
|
||||
msgid "Error: Could not read profile %s: %s.\n"
|
||||
msgstr ""
|
||||
|
@ -308,29 +321,36 @@ msgstr ""
|
|||
#: parser_yacc.y:1278 parser_yacc.y:1288 parser_yacc.y:1382 parser_yacc.y:1460
|
||||
#: parser_yacc.y:1592 parser_yacc.y:1597 parser_yacc.y:1674 parser_yacc.y:1692
|
||||
#: parser_yacc.y:1699 parser_yacc.y:1748 ../network.c:315 ../af_unix.cc:194
|
||||
#: ../parser_misc.c:226 ../parser_misc.c:970 parser_yacc.y:379
|
||||
#: parser_yacc.y:403 parser_yacc.y:571 parser_yacc.y:581 parser_yacc.y:673
|
||||
#: parser_yacc.y:744 parser_yacc.y:1073 parser_yacc.y:1160 parser_yacc.y:1169
|
||||
#: parser_yacc.y:1173 parser_yacc.y:1183 parser_yacc.y:1193 parser_yacc.y:1287
|
||||
#: parser_yacc.y:1365 parser_yacc.y:1561 parser_yacc.y:1569 parser_yacc.y:1619
|
||||
#: parser_yacc.y:1624 parser_yacc.y:1701 parser_yacc.y:1750 ../network.cc:899
|
||||
#: ../af_unix.cc:197 ../all_rule.cc:102 ../all_rule.cc:131
|
||||
msgid "Memory allocation error."
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:740 ../parser_main.c:872 ../parser_main.c:757
|
||||
#: ../parser_main.c:975
|
||||
#: ../parser_main.c:975 ../parser_main.c:1062
|
||||
#, c-format
|
||||
msgid "Cached load succeeded for \"%s\".\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:744 ../parser_main.c:876 ../parser_main.c:761
|
||||
#: ../parser_main.c:979
|
||||
#: ../parser_main.c:979 ../parser_main.c:1066
|
||||
#, c-format
|
||||
msgid "Cached reload succeeded for \"%s\".\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:910 ../parser_main.c:1058 ../parser_main.c:967
|
||||
#: ../parser_main.c:1132
|
||||
#: ../parser_main.c:1132 ../parser_main.c:1221
|
||||
#, c-format
|
||||
msgid "%s: Errors found in file. Aborting.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:426 ../parser_misc.c:597 ../parser_misc.c:339
|
||||
#: ../parser_misc.c:532
|
||||
#: ../parser_misc.c:532 ../parser_misc.c:563
|
||||
msgid ""
|
||||
"Uppercase qualifiers \"RWLIMX\" are deprecated, please convert to lowercase\n"
|
||||
"See the apparmor.d(5) manpage for details.\n"
|
||||
|
@ -338,17 +358,18 @@ msgstr ""
|
|||
|
||||
#: ../parser_misc.c:467 ../parser_misc.c:474 ../parser_misc.c:638
|
||||
#: ../parser_misc.c:645 ../parser_misc.c:380 ../parser_misc.c:387
|
||||
#: ../parser_misc.c:573 ../parser_misc.c:580
|
||||
#: ../parser_misc.c:573 ../parser_misc.c:580 ../parser_misc.c:604
|
||||
#: ../parser_misc.c:611
|
||||
msgid "Conflict 'a' and 'w' perms are mutually exclusive."
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:491 ../parser_misc.c:662 ../parser_misc.c:404
|
||||
#: ../parser_misc.c:597
|
||||
#: ../parser_misc.c:597 ../parser_misc.c:628
|
||||
msgid "Exec qualifier 'i' invalid, conflicting qualifier already specified"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:502 ../parser_misc.c:673 ../parser_misc.c:415
|
||||
#: ../parser_misc.c:608
|
||||
#: ../parser_misc.c:608 ../parser_misc.c:639
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Unconfined exec qualifier (%c%c) allows some dangerous environment variables "
|
||||
|
@ -357,14 +378,16 @@ msgstr ""
|
|||
|
||||
#: ../parser_misc.c:510 ../parser_misc.c:551 ../parser_misc.c:681
|
||||
#: ../parser_misc.c:722 ../parser_misc.c:423 ../parser_misc.c:464
|
||||
#: ../parser_misc.c:616 ../parser_misc.c:657
|
||||
#: ../parser_misc.c:616 ../parser_misc.c:657 ../parser_misc.c:647
|
||||
#: ../parser_misc.c:688
|
||||
#, c-format
|
||||
msgid "Exec qualifier '%c' invalid, conflicting qualifier already specified"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:537 ../parser_misc.c:545 ../parser_misc.c:708
|
||||
#: ../parser_misc.c:716 ../parser_misc.c:450 ../parser_misc.c:458
|
||||
#: ../parser_misc.c:643 ../parser_misc.c:651
|
||||
#: ../parser_misc.c:643 ../parser_misc.c:651 ../parser_misc.c:674
|
||||
#: ../parser_misc.c:682
|
||||
#, c-format
|
||||
msgid "Exec qualifier '%c%c' invalid, conflicting qualifier already specified"
|
||||
msgstr ""
|
||||
|
@ -376,7 +399,7 @@ msgid "Internal: unexpected mode character '%c' in input"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:615 ../parser_misc.c:786 ../parser_misc.c:528
|
||||
#: ../parser_misc.c:721
|
||||
#: ../parser_misc.c:721 ../parser_misc.c:752
|
||||
#, c-format
|
||||
msgid "Internal error generated invalid perm 0x%llx\n"
|
||||
msgstr ""
|
||||
|
@ -388,12 +411,12 @@ msgid "AppArmor parser error: %s\n"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_merge.c:92 ../parser_merge.c:91 ../parser_merge.c:83
|
||||
#: ../parser_merge.c:71
|
||||
#: ../parser_merge.c:71 ../parser_merge.c:74
|
||||
msgid "Couldn't merge entries. Out of Memory\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_merge.c:111 ../parser_merge.c:113 ../parser_merge.c:105
|
||||
#: ../parser_merge.c:93
|
||||
#: ../parser_merge.c:93 ../parser_merge.c:97
|
||||
#, c-format
|
||||
msgid "profile %s: has merged rule %s with conflicting x modifiers\n"
|
||||
msgstr ""
|
||||
|
@ -403,28 +426,34 @@ msgid "Profile attachment must begin with a '/'."
|
|||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:260 parser_yacc.y:302 parser_yacc.y:348 parser_yacc.y:407
|
||||
#: parser_yacc.y:446
|
||||
msgid ""
|
||||
"Profile names must begin with a '/', namespace or keyword 'profile' or 'hat'."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:296 parser_yacc.y:338 parser_yacc.y:384 parser_yacc.y:449
|
||||
#: parser_yacc.y:487
|
||||
#, c-format
|
||||
msgid "Failed to create alias %s -> %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:417 parser_yacc.y:460 parser_yacc.y:506 parser_yacc.y:581
|
||||
#: ../profile.h:272
|
||||
msgid "Profile flag chroot_relative conflicts with namespace_relative"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:421 parser_yacc.y:464 parser_yacc.y:510 parser_yacc.y:585
|
||||
#: ../profile.h:276
|
||||
msgid "Profile flag mediate_deleted conflicts with delegate_deleted"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:424 parser_yacc.y:467 parser_yacc.y:513 parser_yacc.y:588
|
||||
#: ../profile.h:279
|
||||
msgid "Profile flag attach_disconnected conflicts with no_attach_disconnected"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:427 parser_yacc.y:470 parser_yacc.y:516 parser_yacc.y:591
|
||||
#: ../profile.h:282
|
||||
msgid "Profile flag chroot_attach conflicts with chroot_no_attach"
|
||||
msgstr ""
|
||||
|
||||
|
@ -433,12 +462,13 @@ msgid "Profile flag 'debug' is no longer valid."
|
|||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:463 parser_yacc.y:506 parser_yacc.y:552 parser_yacc.y:629
|
||||
#: ../profile.h:220
|
||||
#, c-format
|
||||
msgid "Invalid profile flag: %s."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:498 parser_yacc.y:520 parser_yacc.y:548 parser_yacc.y:594
|
||||
#: parser_yacc.y:673
|
||||
#: parser_yacc.y:673 parser_yacc.y:687
|
||||
msgid "Assert: `rule' returned NULL."
|
||||
msgstr ""
|
||||
|
||||
|
@ -464,55 +494,66 @@ msgid "Assert: `network_rule' return invalid protocol."
|
|||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:649 parser_yacc.y:696 parser_yacc.y:786 parser_yacc.y:867
|
||||
#: parser_yacc.y:776
|
||||
msgid "Assert: `change_profile' returned NULL."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:680 parser_yacc.y:720 parser_yacc.y:810 parser_yacc.y:905
|
||||
#: parser_yacc.y:814
|
||||
msgid "Assert: 'hat rule' returned NULL."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:689 parser_yacc.y:729 parser_yacc.y:819 parser_yacc.y:914
|
||||
#: parser_yacc.y:823
|
||||
msgid "Assert: 'local_profile rule' returned NULL."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:824 parser_yacc.y:885 parser_yacc.y:992 parser_yacc.y:1077
|
||||
#: ../cond_expr.cc:36
|
||||
#, c-format
|
||||
msgid "Unset boolean variable %s used in if-expression"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:882 parser_yacc.y:986 parser_yacc.y:1092 parser_yacc.y:1181
|
||||
#: parser_yacc.y:1083
|
||||
msgid "unsafe rule missing exec permissions"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:901 parser_yacc.y:954 parser_yacc.y:1060 parser_yacc.y:1148
|
||||
#: parser_yacc.y:1050
|
||||
msgid "subset can only be used with link rules."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:903 parser_yacc.y:956 parser_yacc.y:1062 parser_yacc.y:1150
|
||||
#: parser_yacc.y:1052
|
||||
msgid "link and exec perms conflict on a file rule using ->"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:905 parser_yacc.y:958 parser_yacc.y:1064 parser_yacc.y:1152
|
||||
#: parser_yacc.y:1054
|
||||
msgid "link perms are not allowed on a named profile transition.\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:921 parser_yacc.y:1003 parser_yacc.y:1109 parser_yacc.y:1198
|
||||
#: parser_yacc.y:1100
|
||||
#, c-format
|
||||
msgid "missing an end of line character? (entry: %s)"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:975 parser_yacc.y:985 parser_yacc.y:1057 parser_yacc.y:1067
|
||||
#: parser_yacc.y:1145 parser_yacc.y:1155 parser_yacc.y:1234 parser_yacc.y:1244
|
||||
#: ../network.cc:484
|
||||
msgid "Invalid network entry."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1039 parser_yacc.y:1048 parser_yacc.y:1254 parser_yacc.y:1510
|
||||
#: parser_yacc.y:1617
|
||||
#: parser_yacc.y:1617 parser_yacc.y:1644
|
||||
#, c-format
|
||||
msgid "Invalid capability %s."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1066 parser_yacc.y:1269 parser_yacc.y:1525 parser_yacc.y:1637
|
||||
#: parser_yacc.y:1664
|
||||
#, c-format
|
||||
msgid "AppArmor parser error for %s%s%s at line %d: %s\n"
|
||||
msgstr ""
|
||||
|
@ -560,13 +601,13 @@ msgid "%s: Unable to parse input line '%s'\n"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_regex.c:397 ../parser_regex.c:405 ../parser_regex.c:421
|
||||
#: ../parser_regex.c:487
|
||||
#: ../parser_regex.c:487 ../parser_regex.c:491
|
||||
#, c-format
|
||||
msgid "%s: Invalid profile name '%s' - bad regular expression\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:202 ../parser_policy.c:402 ../parser_policy.c:375
|
||||
#: ../parser_policy.c:383
|
||||
#: ../parser_policy.c:383 ../parser_policy.c:231
|
||||
#, c-format
|
||||
msgid "ERROR merging rules for profile %s, failed to load\n"
|
||||
msgstr ""
|
||||
|
@ -580,19 +621,19 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:279 ../parser_policy.c:359 ../parser_policy.c:332
|
||||
#: ../parser_policy.c:340
|
||||
#: ../parser_policy.c:340 ../parser_policy.c:193
|
||||
#, c-format
|
||||
msgid "ERROR processing regexs for profile %s, failed to load\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:306 ../parser_policy.c:389 ../parser_policy.c:362
|
||||
#: ../parser_policy.c:370
|
||||
#: ../parser_policy.c:370 ../parser_policy.c:218
|
||||
#, c-format
|
||||
msgid "ERROR expanding variables for profile %s, failed to load\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:390 ../parser_policy.c:382 ../parser_policy.c:355
|
||||
#: ../parser_policy.c:363
|
||||
#: ../parser_policy.c:363 ../profile.cc:366
|
||||
#, c-format
|
||||
msgid "ERROR adding hat access rule for profile %s\n"
|
||||
msgstr ""
|
||||
|
@ -622,7 +663,7 @@ msgstr ""
|
|||
msgid "%s: Errors found in combining rules postprocessing. Aborting.\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:180 parser_lex.l:186 parser_lex.l:187
|
||||
#: parser_lex.l:180 parser_lex.l:186 parser_lex.l:187 parser_lex.l:211
|
||||
#, c-format
|
||||
msgid "Could not process include directory '%s' in '%s'"
|
||||
msgstr ""
|
||||
|
@ -634,6 +675,8 @@ msgstr ""
|
|||
#: ../parser_main.c:1115 ../parser_main.c:1132 ../parser_main.c:1024
|
||||
#: ../parser_main.c:1041 ../parser_main.c:1332 ../parser_main.c:1354
|
||||
#: ../parser_misc.c:280 ../parser_misc.c:299 ../parser_misc.c:308
|
||||
#: ../parser_main.c:1511 ../parser_main.c:1535 ../parser_misc.c:310
|
||||
#: ../parser_misc.c:329 ../parser_misc.c:338
|
||||
msgid "Out of memory"
|
||||
msgstr ""
|
||||
|
||||
|
@ -682,20 +725,20 @@ msgstr ""
|
|||
msgid "owner prefix not allow on capability rules"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1357 parser_yacc.y:1613 parser_yacc.y:1722
|
||||
#: parser_yacc.y:1357 parser_yacc.y:1613 parser_yacc.y:1722 parser_yacc.y:1724
|
||||
#, c-format
|
||||
msgid "invalid mount conditional %s%s"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1374 parser_yacc.y:1628 parser_yacc.y:1737
|
||||
#: parser_yacc.y:1374 parser_yacc.y:1628 parser_yacc.y:1737 parser_yacc.y:1739
|
||||
msgid "bad mount rule"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1381 parser_yacc.y:1635 parser_yacc.y:1744
|
||||
#: parser_yacc.y:1381 parser_yacc.y:1635 parser_yacc.y:1744 parser_yacc.y:1746
|
||||
msgid "mount point conditions not currently supported"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1398 parser_yacc.y:1650 parser_yacc.y:1759
|
||||
#: parser_yacc.y:1398 parser_yacc.y:1650 parser_yacc.y:1759 parser_yacc.y:1761
|
||||
#, c-format
|
||||
msgid "invalid pivotroot conditional '%s'"
|
||||
msgstr ""
|
||||
|
@ -712,11 +755,13 @@ msgid "%s: Regex grouping error: Exceeded maximum nesting of {}\n"
|
|||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:366 ../parser_policy.c:339 ../parser_policy.c:347
|
||||
#: ../parser_policy.c:200
|
||||
#, c-format
|
||||
msgid "ERROR processing policydb rules for profile %s, failed to load\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_policy.c:396 ../parser_policy.c:369 ../parser_policy.c:377
|
||||
#: ../parser_policy.c:225
|
||||
#, c-format
|
||||
msgid "ERROR replacing aliases for profile %s, failed to load\n"
|
||||
msgstr ""
|
||||
|
@ -741,7 +786,7 @@ msgstr ""
|
|||
msgid "Internal: unexpected %s mode character '%c' in input"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:599 ../parser_misc.c:792
|
||||
#: ../parser_misc.c:599 ../parser_misc.c:792 ../parser_misc.c:823
|
||||
#, c-format
|
||||
msgid "Internal error generated invalid %s perm 0x%x\n"
|
||||
msgstr ""
|
||||
|
@ -766,16 +811,16 @@ msgstr ""
|
|||
msgid "owner prefix not allowed on unix rules"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:794 parser_yacc.y:885
|
||||
#: parser_yacc.y:794 parser_yacc.y:885 ../all_rule.cc:141
|
||||
msgid "owner prefix not allowed on capability rules"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1293 parser_yacc.y:1377
|
||||
#: parser_yacc.y:1293 parser_yacc.y:1377 parser_yacc.y:1282
|
||||
#, c-format
|
||||
msgid "dbus rule: invalid conditional group %s=()"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1371 parser_yacc.y:1455
|
||||
#: parser_yacc.y:1371 parser_yacc.y:1455 parser_yacc.y:1360
|
||||
#, c-format
|
||||
msgid "unix rule: invalid conditional group %s=()"
|
||||
msgstr ""
|
||||
|
@ -785,183 +830,183 @@ msgstr ""
|
|||
msgid "%s: Regex error: trailing '\\' escape character\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_common.c:112
|
||||
#: ../parser_common.c:112 ../parser_common.c:134
|
||||
#, c-format
|
||||
msgid "%s from %s (%s%sline %d): %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_common.c:113
|
||||
#: ../parser_common.c:113 ../parser_common.c:135
|
||||
msgid "Warning converted to Error"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_common.c:113
|
||||
#: ../parser_common.c:113 ../parser_common.c:135
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:524
|
||||
#: ../parser_interface.c:524 ../parser_interface.c:618
|
||||
#, c-format
|
||||
msgid "Unable to open stdout - %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:533
|
||||
#: ../parser_interface.c:533 ../parser_interface.c:627
|
||||
#, c-format
|
||||
msgid "Unable to open output file - %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:326
|
||||
#: parser_lex.l:326 parser_lex.l:363
|
||||
msgid "Failed to process filename\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:720
|
||||
#: parser_lex.l:720 parser_lex.l:799
|
||||
#, c-format
|
||||
msgid "Lexer found unexpected character: '%s' (0x%x) in state: %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:915
|
||||
#: ../parser_main.c:915 ../parser_main.c:1002
|
||||
#, c-format
|
||||
msgid "Unable to print the cache directory: %m\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:951
|
||||
#: ../parser_main.c:951 ../parser_main.c:1038
|
||||
#, c-format
|
||||
msgid "Error: Could not load profile %s: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:961
|
||||
#: ../parser_main.c:961 ../parser_main.c:1048
|
||||
#, c-format
|
||||
msgid "Error: Could not replace profile %s: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:966
|
||||
#: ../parser_main.c:966 ../parser_main.c:1053
|
||||
#, c-format
|
||||
msgid "Error: Invalid load option specified: %d\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1077
|
||||
#: ../parser_main.c:1077 ../parser_main.c:1166
|
||||
#, c-format
|
||||
msgid "Could not get cachename for '%s'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1434
|
||||
#: ../parser_main.c:1434 ../parser_main.c:1644
|
||||
msgid "Kernel features abi not found"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1438
|
||||
#: ../parser_main.c:1438 ../parser_main.c:1648
|
||||
msgid "Failed to add kernel capabilities to known capabilities set"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1465
|
||||
#: ../parser_main.c:1465 ../parser_main.c:1675
|
||||
#, c-format
|
||||
msgid "Failed to clear cache files (%s): %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1474
|
||||
#: ../parser_main.c:1474 ../parser_main.c:1684
|
||||
msgid ""
|
||||
"The --create-cache-dir option is deprecated. Please use --write-cache.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_main.c:1479
|
||||
#: ../parser_main.c:1479 ../parser_main.c:1689
|
||||
#, c-format
|
||||
msgid "Failed setting up policy cache (%s): %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:904
|
||||
#: ../parser_misc.c:904 ../parser_misc.c:935
|
||||
#, c-format
|
||||
msgid "Namespace not terminated: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:906
|
||||
#: ../parser_misc.c:906 ../parser_misc.c:937
|
||||
#, c-format
|
||||
msgid "Empty namespace: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:908
|
||||
#: ../parser_misc.c:908 ../parser_misc.c:939
|
||||
#, c-format
|
||||
msgid "Empty named transition profile name: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:910
|
||||
#: ../parser_misc.c:910 ../parser_misc.c:941
|
||||
#, c-format
|
||||
msgid "Unknown error while parsing label: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:306
|
||||
#: parser_yacc.y:306 parser_yacc.y:334
|
||||
msgid "Failed to setup default policy feature abi"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:308
|
||||
#: parser_yacc.y:308 parser_yacc.y:336
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s: File '%s' missing feature abi, falling back to default policy feature "
|
||||
"abi\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:313
|
||||
#: parser_yacc.y:313 parser_yacc.y:341
|
||||
msgid "Failed to add policy capabilities to known capabilities set"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:350
|
||||
#: parser_yacc.y:350 parser_yacc.y:386
|
||||
msgid "Profile names must begin with a '/' or a namespace"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:372
|
||||
#: parser_yacc.y:372 parser_yacc.y:408
|
||||
msgid "Profile attachment must begin with a '/' or variable."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:375
|
||||
#: parser_yacc.y:375 parser_yacc.y:411
|
||||
#, c-format
|
||||
msgid "profile id: invalid conditional group %s=()"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:404
|
||||
#: parser_yacc.y:404 parser_yacc.y:443
|
||||
msgid ""
|
||||
"The use of file paths as profile names is deprecated. See man apparmor.d for "
|
||||
"more information\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:573
|
||||
#: parser_yacc.y:573 ../profile.h:264
|
||||
#, c-format
|
||||
msgid "Profile flag '%s' conflicts with '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:954
|
||||
#: parser_yacc.y:954 parser_yacc.y:862
|
||||
msgid "RLIMIT 'cpu' no units specified using default units of seconds\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:966
|
||||
#: parser_yacc.y:966 parser_yacc.y:874
|
||||
msgid ""
|
||||
"RLIMIT 'rttime' no units specified using default units of microseconds\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1582
|
||||
#: parser_yacc.y:1582 parser_yacc.y:1609
|
||||
msgid "Exec condition is required when unsafe or safe keywords are present"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1584
|
||||
#: parser_yacc.y:1584 parser_yacc.y:1611
|
||||
msgid "Exec condition must begin with '/'."
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1643
|
||||
#: parser_yacc.y:1643 parser_yacc.y:1670
|
||||
#, c-format
|
||||
msgid "AppArmor parser error at line %d: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1790
|
||||
#: parser_yacc.y:1790 parser_yacc.y:1797
|
||||
#, c-format
|
||||
msgid "Could not open '%s': %m"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1795
|
||||
#: parser_yacc.y:1795 parser_yacc.y:1802
|
||||
#, c-format
|
||||
msgid "fstat failed for '%s': %m"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1809
|
||||
#: parser_yacc.y:1809 parser_yacc.y:1816
|
||||
#, c-format
|
||||
msgid "failed to find features abi '%s': %m"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1813
|
||||
#: parser_yacc.y:1813 parser_yacc.y:1821
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s: %s features abi '%s' differs from policy declared feature abi, using the "
|
||||
|
@ -973,7 +1018,124 @@ msgstr ""
|
|||
msgid "%s: Invalid glob type %d\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_regex.c:693
|
||||
#: ../parser_regex.c:693 ../parser_regex.c:721
|
||||
#, c-format
|
||||
msgid "The current kernel does not support stacking of named transitions: %s\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:76
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s: Permission denied. You need policy admin privileges to manage profiles.\n"
|
||||
"\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_interface.c:80
|
||||
#, c-format
|
||||
msgid ""
|
||||
"%s: Access denied. You need policy admin privileges to manage profiles.\n"
|
||||
"\n"
|
||||
msgstr ""
|
||||
|
||||
#: parser_lex.l:653 parser_lex.l:668
|
||||
msgid "deprecated use of '#include'\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:730
|
||||
#, c-format
|
||||
msgid "Internal: unexpected perms character '%c' in input"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:799
|
||||
#, c-format
|
||||
msgid "Internal: unexpected %s perms character '%c' in input"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:1098
|
||||
msgid ""
|
||||
"Invalid perms, in deny rules 'x' must not be preceded by exec qualifier 'i', "
|
||||
"'p', or 'u'"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_misc.c:1102
|
||||
msgid "Invalid perms, 'x' must be preceded by exec qualifier 'i', 'p', or 'u'"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:689 parser_yacc.y:716 ../all_rule.cc:105 ../all_rule.cc:134
|
||||
#, c-format
|
||||
msgid "%s"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:705
|
||||
msgid "priority is not allowed on rule blocks"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:778
|
||||
msgid "owner conditional not allowed on unix rules"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:794
|
||||
msgid "owner conditional not allowed on capability rules"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1119 parser_yacc.y:1132 parser_yacc.y:1146
|
||||
#, c-format
|
||||
msgid "network rule: invalid conditional group %s=()"
|
||||
msgstr ""
|
||||
|
||||
#: parser_yacc.y:1827
|
||||
msgid "failed features abi not set but include cache skipped\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../parser_variable.c:295
|
||||
msgid "attach_disconnected_path value must begin with a /"
|
||||
msgstr ""
|
||||
|
||||
#: ../mount.cc:897
|
||||
msgid ""
|
||||
"The use of source as mount point for propagation type flags is deprecated.\n"
|
||||
msgstr ""
|
||||
|
||||
#: ../network.h:200
|
||||
msgid "priority prefix not allowed on network rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../network.h:204
|
||||
msgid "owner prefix not allowed on network rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../profile.h:287
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Profile flag attach_disconnected set to conflicting values: '%s' and '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: ../profile.h:297
|
||||
#, c-format
|
||||
msgid "Profile flag kill.signal set to conflicting values: '%d' and '%d'"
|
||||
msgstr ""
|
||||
|
||||
#: ../profile.h:307
|
||||
#, c-format
|
||||
msgid "Profile flag error set to conflicting values: '%s' and '%s'"
|
||||
msgstr ""
|
||||
|
||||
#: ../userns.h:36
|
||||
msgid "owner prefix not allowed on userns rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../mqueue.h:106
|
||||
msgid "owner prefix not allowed on mqueue rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../io_uring.h:42
|
||||
msgid "owner prefix not allowed on io_uring rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../all_rule.h:36
|
||||
msgid "priority prefix not allowed on all rules"
|
||||
msgstr ""
|
||||
|
||||
#: ../all_rule.h:40
|
||||
msgid "owner prefix not allowed on all rules"
|
||||
msgstr ""
|
||||
|
|
Loading…
Add table
Reference in a new issue