Skip to content

compiler wrapper trying to create temporary files in /dev #2288

Description

@mischief

hi,

without any additional setup or ceremony, i built HEAD with rustc/cargo 1.81.0 in gentoo and invoked sccache like the readme suggests: https://github.com/mozilla/sccache?tab=readme-ov-file#usage

mischief@beast:~/src/sccache $ cargo build --release
   Compiling libc v0.2.155
   Compiling proc-macro2 v1.0.75
   Compiling unicode-ident v1.0.12
...
    Finished `release` profile [optimized] target(s) in 3m 24s

i'm not a rust person, but i find it odd that sccache would attempt to make a temporary file in /dev/. a user program should never do this.

this occurred after more than 1 invocation of sccache with the same parameters. the first invocation had no error.

mischief@beast:~/src/sccache $ ./target/release/sccache cc -o /dev/null -c ~/code/c/fbufsize.c
sccache: encountered fatal error
sccache: error: Permission denied (os error 13) at path "/dev/.tmp48KCJX"
sccache: caused by: Permission denied (os error 13) at path "/dev/.tmp48KCJX"

fbufsize.c is nothing special, just a trivial program i had laying around.

#include <stdio.h>
#include <stdio_ext.h>

int main(void)
{
        setvbuf(stdout, NULL, _IONBF, 0);
        setvbuf(stderr, NULL, _IONBF, 0);
        printf("%ld\n", __fbufsize(stdout));
        printf("%ld\n", __fbufsize(stderr));
        return 0;
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions