Richard Marko <[email protected]> writes:
> Stored in /proc/<pid>/cgroup
>
> Signed-off-by: Richard Marko <[email protected]>
> ---
> src/hooks/abrt-hook-ccpp.c | 7 +++++++
> 1 files changed, 7 insertions(+), 0 deletions(-)
>
> diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c
> index 83dbf9f..e9838d2 100644
> --- a/src/hooks/abrt-hook-ccpp.c
> +++ b/src/hooks/abrt-hook-ccpp.c
> @@ -713,6 +713,13 @@ int main(int argc, char** argv)
> copy_file(source_filename, dest_filename, 0640);
> IGNORE_RESULT(chown(dest_filename, dd->dd_uid, dd->dd_gid));
>
> + strcpy(source_filename + source_base_ofs, "cgroup");
> + strcpy(dest_base, FILENAME_CGROUP);
> + if (access(source_filename, F_OK) != -1) {
wrong coding style, we are using
if ()
{
}
but this is not a problem. call *access* is superfluous, because
copy_file do the job for you.
int src = open(src_name, O_RDONLY);
if (src < 0)
{
perror_msg("Can't open '%s'", src_name);
return -1;
}
see more in libreport.git/src/lib/copyfd.c
> + copy_file(source_filename, dest_filename, 0640);
> + IGNORE_RESULT(chown(dest_filename, dd->dd_uid, dd->dd_gid));
> + }
> +
> strcpy(dest_base, FILENAME_OPEN_FDS);
> if (dump_fd_info(dest_filename, source_filename, source_base_ofs))
> IGNORE_RESULT(chown(dest_filename, dd->dd_uid, dd->dd_gid));
--
Nikola