mirror of
https://gitlab.com/apparmor/apparmor
synced 2025-09-02 07:15:18 +00:00
Merge in r1413 and r1418: report correct filename/line number on errors
in the parser. r1413 Nominated-by: Kees Cook <kees@ubuntu.com> r1413 Acked-By: Steve Beattie <sbeattie@ubuntu.com> r1418 Nominated-by: Steve Beattie <sbeattie@ubuntu.com> r1418 Acked-By: Kees Cook <kees@ubuntu.com> r1418 Acked-By: John Johansen <john.johansen@canonical.com>
This commit is contained in:
@@ -85,8 +85,6 @@ int perms_create = 0; /* perms contain create flag */
|
||||
char *profile_namespace = NULL;
|
||||
int flag_changehat_version = FLAG_CHANGEHAT_1_5;
|
||||
|
||||
extern int current_lineno;
|
||||
|
||||
/* per-profile settings */
|
||||
int force_complain = 0;
|
||||
char *profilename = NULL;
|
||||
@@ -224,8 +222,10 @@ void pwarn(char *fmt, ...)
|
||||
if (conf_quiet || names_only || option == OPTION_REMOVE)
|
||||
return;
|
||||
|
||||
rc = asprintf(&newfmt, _("Warning (%s line %d): %s"),
|
||||
rc = asprintf(&newfmt, _("Warning from %s (%s%sline %d): %s"),
|
||||
profilename ? profilename : "stdin",
|
||||
current_filename ? current_filename : "",
|
||||
current_filename ? " " : "",
|
||||
current_lineno,
|
||||
fmt);
|
||||
if (!newfmt)
|
||||
@@ -695,12 +695,13 @@ int process_binary(int option, char *profilename)
|
||||
return retval;
|
||||
}
|
||||
|
||||
void reset_parser(void)
|
||||
void reset_parser(char *filename)
|
||||
{
|
||||
free_aliases();
|
||||
free_symtabs();
|
||||
free_policies();
|
||||
reset_regex();
|
||||
reset_include_stack(filename);
|
||||
}
|
||||
|
||||
int process_profile(int option, char *profilename)
|
||||
@@ -796,7 +797,7 @@ int process_profile(int option, char *profilename)
|
||||
|
||||
if (yyin)
|
||||
yyrestart(yyin);
|
||||
reset_parser();
|
||||
reset_parser(profilename);
|
||||
|
||||
retval = yyparse();
|
||||
if (retval != 0)
|
||||
|
Reference in New Issue
Block a user