[apparmor] [patch 03/18] parser: remove static sized buffer in process_dbus_entry() [resend]
John Johansen
john.johansen at canonical.com
Fri Jan 24 10:36:58 UTC 2014
On 01/16/2014 02:06 PM, Steve Beattie wrote:
> This patch converts a stack allocated buffer into an std::ostringstream
> object. The stringstream interface for specifying the equivalent of
> a printf %02x conversion is a bit of an awkward construction, however.
>
> Signed-off-by: Steve Beattie <steve at nxnw.org>
Acked-by: John Johansen <john.johansen at canonical.com>
> ---
> parser/parser_regex.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> Index: b/parser/parser_regex.c
> ===================================================================
> --- a/parser/parser_regex.c
> +++ b/parser/parser_regex.c
> @@ -24,7 +24,10 @@
> #include <sys/apparmor.h>
> #define _(s) gettext(s)
>
> +#include <iomanip>
> #include <string>
> +#include <sstream>
> +
>
> /* #define DEBUG */
>
> @@ -1018,7 +1021,7 @@ static int process_dbus_entry(aare_rules
> std::string pathbuf;
> std::string ifacebuf;
> std::string memberbuf;
> - char buffer[128];
> + std::ostringstream buffer;
> const char *vec[6];
>
> pattern_t ptype;
> @@ -1027,8 +1030,8 @@ static int process_dbus_entry(aare_rules
> if (!entry) /* shouldn't happen */
> return TRUE;
>
> - sprintf(buffer, "\\x%02x", AA_CLASS_DBUS);
> - busbuf.append(buffer);
> + buffer << "\\x" << std::setfill('0') << std::setw(2) << std::hex << AA_CLASS_DBUS;
> + busbuf.append(buffer.str());
>
> if (entry->bus) {
> ptype = convert_aaregex_to_pcre(entry->bus, 0, busbuf, &pos);
>
>
> -- AppArmor mailing list AppArmor at lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
>
More information about the AppArmor
mailing list