On Sat, Aug 30, 2014 at 07:19:07PM -0700, John Johansen wrote:
> fix output of listen and setopts commands
> 
> The listen and setopts commands have broken encodings because the
> tmp stream they use to handle diverging from the other commands
> has does not set its write position to to the end of the copied data.
> Instead the write head is set to the beginning so that when the
> new data for the command is written it overwrites the begging of
> the command instead of appending to it.
> 
> Signed-off-by: John Johansen <[email protected]>
> 

Acked-by: Seth Arnold <[email protected]>

Thanks

> ---
> 
> === modified file 'parser/af_unix.cc'
> --- parser/af_unix.cc 2014-08-30 05:32:14 +0000
> +++ parser/af_unix.cc 2014-08-31 02:09:00 +0000
> @@ -316,7 +312,7 @@
>   */
>  int unix_rule::gen_policy_re(Profile &prof)
>  {
> -     std::ostringstream buffer, tmp;
> +     std::ostringstream buffer;
>       std::string buf;
>  
>       int mask = mode;
> @@ -371,7 +367,8 @@
>               }
>  
>               if (mask & AA_NET_LISTEN) {
> -                     tmp.str(buffer.str());
> +                     std::ostringstream tmp(buffer.str());
> +                     tmp.seekp(0, ios_base::end);
>                       tmp << "\\x" << std::setfill('0') << std::setw(2) << 
> std::hex << CMD_LISTEN;
>                       /* TODO: backlog conditional: for now match anything*/
>                       tmp << "..";
> @@ -383,7 +380,8 @@
>                               goto fail;
>               }
>               if (mask & AA_NET_OPT) {
> -                     tmp.str(buffer.str());
> +                     std::ostringstream tmp(buffer.str());
> +                     tmp.seekp(0, ios_base::end);
>                       tmp << "\\x" << std::setfill('0') << std::setw(2) << 
> std::hex << CMD_OPT;
>                       /* TODO: sockopt conditional: for now match anything */
>                       tmp << "..";
> 
> 
> 
> -- 
> AppArmor mailing list
> [email protected]
> Modify settings or unsubscribe at: 
> https://lists.ubuntu.com/mailman/listinfo/apparmor
> 

Attachment: signature.asc
Description: Digital signature

-- 
AppArmor mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/apparmor

Reply via email to