From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2CFBCC388F7 for ; Sat, 31 Oct 2020 15:08:01 +0000 (UTC) Received: from shelob.surriel.com (shelob.surriel.com [96.67.55.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 804392071A for ; Sat, 31 Oct 2020 15:08:00 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="KNpD2lme" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 804392071A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kernelnewbies-bounces+kernelnewbies=archiver.kernel.org@kernelnewbies.org Received: from localhost ([::1] helo=shelob.surriel.com) by shelob.surriel.com with esmtp (Exim 4.94) (envelope-from ) id 1kYsU3-0005mY-Bi for kernelnewbies@archiver.kernel.org; Sat, 31 Oct 2020 11:07:59 -0400 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by shelob.surriel.com with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94) (envelope-from ) id 1kYsSJ-0004Ks-7w for kernelnewbies@kernelnewbies.org; Sat, 31 Oct 2020 11:06:11 -0400 Received: by mail-wm1-x329.google.com with SMTP id c9so3829600wml.5 for ; Sat, 31 Oct 2020 08:06:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:user-agent:mime-version; bh=OZNEEyqNyw4yV3/UPzY9tv56vIdcFcoQUkdNc8pyJ8E=; b=KNpD2lme3ce4QfS+oTl2vQep/7v+96K4DO3w0HB+zi27e6e8PnKrV8sUfq3LjUSz2A shgX6GoLsOCpuNS+wov84KabyihL4dbrMxl0LRXpW80cpkhl3O2eGQT8r6TPz68uNsU3 Sb1QyjLt5r5Qnoe2leITAdS+eliImEvT7aMLo95+bt8uqK4UaIFqs1ADZt5/jjellAKh vrwaTCc77VUUMCOm757UldUPFzXRdbuAOlukiNQod/d1ix2LtvyA7SuHrod+qglOjU9m ullJdFHGVVHNC1+8qO/hMAd7UIMizYWhhRTAi2rbRpu9w81g8DETD8cBuVnr7hvFYBo/ tsWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=OZNEEyqNyw4yV3/UPzY9tv56vIdcFcoQUkdNc8pyJ8E=; b=TlV4s0cv/1DLuJ0uSgJ7LC3WhkE3+wEWlgYfe6OSzlgMRInp8hxwQ9a6na97e9Bozr 1agRxymcA83JF7HKXKLlgYNyCF77J59MUy/MMjKjQXIEhgxhyTo/rdpxYsndTe7eDibs EDu813cemGRvaSwBD4LRNAMM2K4TzrlnhxeqLfHxKPhjz8sSL5dmCpxYUYMgUCis/KEX jpzs7Wervrz1HCP0jXZc6AnCOkqJlydPz203rMd14mpepuolS4r4ykwE111ZLvkQVU7I 9W8IiHYmL1xidQgkAZCOn34rcQk5s1DNNNGXi/849bklh4gmvLKAPYn6GgCMYTBJGdCB rOVQ== X-Gm-Message-State: AOAM532xsBxySbzO6onQ77eik2ClPcqqAam1KvohmGRIhTsckK2Sgffl Il4QpSJodlx06e5XZCwpajtLoMamHQI5Pg== X-Google-Smtp-Source: ABdhPJy2RAYhsV9VrhyBw4ikeEmGvqR74ZWxZNvAl8zEyr6+nU4xulHGxUuKHV/XOlA94+vfEg+F9w== X-Received: by 2002:a1c:bac1:: with SMTP id k184mr2857040wmf.76.1604156708799; Sat, 31 Oct 2020 08:05:08 -0700 (PDT) Received: from rigel ([62.60.61.231]) by smtp.gmail.com with ESMTPSA id s11sm14665875wrm.56.2020.10.31.08.05.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 31 Oct 2020 08:05:08 -0700 (PDT) From: Nicky Chorley To: kernelnewbies@kernelnewbies.org Subject: Setting group/other write flags not honoured in open Date: Sat, 31 Oct 2020 15:05:07 +0000 Message-ID: <87y2jmwi58.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 X-BeenThere: kernelnewbies@kernelnewbies.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Learn about the Linux kernel List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: kernelnewbies-bounces+kernelnewbies=archiver.kernel.org@kernelnewbies.org Hi folks, I hope it's OK to ask this question here. I'm reading The Linux Programming Interface and am beginning to get to grips with the file oriented system calls. I have a program that calls open to create a file, specifying the mode flags for owner, group, other read and write. The file is created sucessfully, but when I look at its permissions, I only see the read perms set for group and others: > ./create_file foo > ls -l foo -rw-r--r-- 1 nick users 0 Oct 31 14:52 foo Why would that be? The entirety of my program is #include #include int main(int argc, char *argv[]) { int open_flags = O_CREAT | O_WRONLY | O_TRUNC; mode_t file_perms = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH; int output_fd = open(argv[1], open_flags, file_perms); close(output_fd); } I also ran the program with strace and the perms in the openat call are as I would expect: openat(AT_FDCWD, "foo", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3 I don't understand why the group and other write flags aren't being set. Could someone help shed some light on this please? I'm not sure what factors influence this, but I'm running openSUSE Leap 15.2, with kernel 5.3.18-lp152.47-default, gcc 7.5.0 and glibc 2.26. Thanks, Nicky _______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies