[rtems commit] pwdgrp.c: Remove _Assert. /etc may already exist

Joel Sherrill joel at rtems.org
Tue Mar 23 17:02:11 UTC 2021


Module:    rtems
Branch:    master
Commit:    37fc6516d36e82e0a740b33cc2787b4d031411d9
Changeset: http://git.rtems.org/rtems/commit/?id=37fc6516d36e82e0a740b33cc2787b4d031411d9

Author:    Ryan Long <ryan.long at oarcorp.com>
Date:      Tue Mar 23 12:25:15 2021 -0400

pwdgrp.c: Remove _Assert. /etc may already exist

Removed the _Assert_unused_variable_equals macro due to /etc
having already been created by the network stack initialization
or an initial filesystem image.

Closes #4282

---

 cpukit/libcsupport/src/pwdgrp.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/cpukit/libcsupport/src/pwdgrp.c b/cpukit/libcsupport/src/pwdgrp.c
index f4a10f7..154a92a 100644
--- a/cpukit/libcsupport/src/pwdgrp.c
+++ b/cpukit/libcsupport/src/pwdgrp.c
@@ -67,9 +67,13 @@ static void pwdgrp_init(void)
 
   /*
    * Do the best to create this directory.
+   *
+   * /etc could be created by the network stack initialization or an initial
+   * filesystem image. Deliberately ignore the return value.
    */
   sc = mkdir("/etc", S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH);
-  _Assert_Unused_variable_equals(sc, 0);
+  _Assert((sc == 0) || (sc == -1 && errno == EEXIST));
+  (void) sc;
 
   /*
    *  Initialize /etc/passwd



More information about the vc mailing list