The branch main has been updated by des:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=7ec549870f2adeb0e896885220d4af6b47c4c9ba

commit 7ec549870f2adeb0e896885220d4af6b47c4c9ba
Author:     Dag-Erling Smørgrav <[email protected]>
AuthorDate: 2026-05-29 17:45:01 +0000
Commit:     Dag-Erling Smørgrav <[email protected]>
CommitDate: 2026-05-29 17:45:01 +0000

    fts: Add some depth to the options test
    
    MFC after:      1 week
    Sponsored by:   Klara, Inc.
    Reviewed by:    kevans
    Differential Revision:  https://reviews.freebsd.org/D57323
---
 lib/libc/tests/gen/fts_options_test.c | 74 +++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/lib/libc/tests/gen/fts_options_test.c 
b/lib/libc/tests/gen/fts_options_test.c
index fc3015138a49..863c0809d16e 100644
--- a/lib/libc/tests/gen/fts_options_test.c
+++ b/lib/libc/tests/gen/fts_options_test.c
@@ -36,6 +36,8 @@ fts_options_prepare(const struct atf_tc *tc)
        ATF_REQUIRE_EQ(0, mkdir("dir", 0755));
        ATF_REQUIRE_EQ(0, close(creat("file", 0644)));
        ATF_REQUIRE_EQ(0, close(creat("dir/file", 0644)));
+       ATF_REQUIRE_EQ(0, mkdir("dir/sd", 0750));
+       ATF_REQUIRE_EQ(0, mkdir("dir/sd/sd", 0700));
        ATF_REQUIRE_EQ(0, symlink("..", "dir/up"));
        ATF_REQUIRE_EQ(0, symlink("dir", "dirl"));
        ATF_REQUIRE_EQ(0, symlink("file", "filel"));
@@ -57,6 +59,10 @@ ATF_TC_BODY(fts_options_logical, tc)
                            { FTS_DL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "dir/file"      },
+                           { FTS_D,    "sd",           "dir/sd"        },
+                           { FTS_D,    "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd"        },
                            { FTS_D,    "up",           "dir/up"        },
                            { FTS_DL,   "dead",         "dir/up/dead"   },
                            { FTS_DC,   "dir",          "dir/up/dir"    },
@@ -67,6 +73,10 @@ ATF_TC_BODY(fts_options_logical, tc)
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_D,    "dirl",         "dirl"          },
                            { FTS_F,    "file",         "dirl/file"     },
+                           { FTS_D,    "sd",           "dirl/sd"       },
+                           { FTS_D,    "sd",           "dirl/sd/sd"    },
+                           { FTS_DP,   "sd",           "dirl/sd/sd"    },
+                           { FTS_DP,   "sd",           "dirl/sd"       },
                            { FTS_D,    "up",           "dirl/up"       },
                            { FTS_DL,   "dead",         "dirl/up/dead"  },
                            { FTS_DC,   "dir",          "dirl/up/dir"   },
@@ -108,6 +118,10 @@ ATF_TC_BODY(fts_options_logical_nostat, tc)
                            { FTS_DL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_NSOK, "file",         "dir/file"      },
+                           { FTS_D,    "sd",           "dir/sd"        },
+                           { FTS_D,    "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd"        },
                            { FTS_D,    "up",           "dir/up"        },
                            { FTS_DL,   "dead",         "dir/up/dead"   },
                            { FTS_DC,   "dir",          "dir/up/dir"    },
@@ -118,6 +132,10 @@ ATF_TC_BODY(fts_options_logical_nostat, tc)
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_D,    "dirl",         "dirl"          },
                            { FTS_NSOK, "file",         "dirl/file"     },
+                           { FTS_D,    "sd",           "dirl/sd"       },
+                           { FTS_D,    "sd",           "dirl/sd/sd"    },
+                           { FTS_DP,   "sd",           "dirl/sd/sd"    },
+                           { FTS_DP,   "sd",           "dirl/sd"       },
                            { FTS_D,    "up",           "dirl/up"       },
                            { FTS_DL,   "dead",         "dirl/up/dead"  },
                            { FTS_DC,   "dir",          "dirl/up/dir"   },
@@ -151,6 +169,14 @@ ATF_TC_BODY(fts_options_logical_seedot, tc)
                            { FTS_DOT,  ".",            "dir/."         },
                            { FTS_DOT,  "..",           "dir/.."        },
                            { FTS_F,    "file",         "dir/file"      },
+                           { FTS_D,    "sd",           "dir/sd"        },
+                           { FTS_DOT,  ".",            "dir/sd/."      },
+                           { FTS_DOT,  "..",           "dir/sd/.."     },
+                           { FTS_D,    "sd",           "dir/sd/sd"     },
+                           { FTS_DOT,  ".",            "dir/sd/sd/."   },
+                           { FTS_DOT,  "..",           "dir/sd/sd/.."  },
+                           { FTS_DP,   "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd"        },
                            { FTS_D,    "up",           "dir/up"        },
                            { FTS_DOT,  ".",            "dir/up/."      },
                            { FTS_DOT,  "..",           "dir/up/.."     },
@@ -165,6 +191,14 @@ ATF_TC_BODY(fts_options_logical_seedot, tc)
                            { FTS_DOT,  ".",            "dirl/."        },
                            { FTS_DOT,  "..",           "dirl/.."       },
                            { FTS_F,    "file",         "dirl/file"     },
+                           { FTS_D,    "sd",           "dirl/sd"       },
+                           { FTS_DOT,  ".",            "dirl/sd/."     },
+                           { FTS_DOT,  "..",           "dirl/sd/.."    },
+                           { FTS_D,    "sd",           "dirl/sd/sd"    },
+                           { FTS_DOT,  ".",            "dirl/sd/sd/."  },
+                           { FTS_DOT,  "..",           "dirl/sd/sd/.." },
+                           { FTS_DP,   "sd",           "dirl/sd/sd"    },
+                           { FTS_DP,   "sd",           "dirl/sd"       },
                            { FTS_D,    "up",           "dirl/up"       },
                            { FTS_DOT,  ".",            "dirl/up/."     },
                            { FTS_DOT,  "..",           "dirl/up/.."    },
@@ -198,6 +232,10 @@ ATF_TC_BODY(fts_options_physical, tc)
                            { FTS_SL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_SL,   "dirl",         "dirl"          },
@@ -224,6 +262,10 @@ ATF_TC_BODY(fts_options_physical_nochdir, tc)
                            { FTS_SL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "dir/file"      },
+                           { FTS_D,    "sd",           "dir/sd"        },
+                           { FTS_D,    "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd/sd"     },
+                           { FTS_DP,   "sd",           "dir/sd"        },
                            { FTS_SL,   "up",           "dir/up"        },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_SL,   "dirl",         "dirl"          },
@@ -250,10 +292,18 @@ ATF_TC_BODY(fts_options_physical_comfollow, tc)
                            { FTS_DL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_D,    "dirl",         "dirl"          },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dirl",         "dirl"          },
                            { FTS_F,    "file",         "file"          },
@@ -279,10 +329,18 @@ ATF_TC_BODY(fts_options_physical_comfollowdir, tc)
                            { FTS_DL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_D,    "dirl",         "dirl"          },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dirl",         "dirl"          },
                            { FTS_F,    "file",         "file"          },
@@ -308,6 +366,10 @@ ATF_TC_BODY(fts_options_physical_nostat, tc)
                            { FTS_SL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_NSOK, "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_NSOK, "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_SL,   "dirl",         "dirl"          },
@@ -334,6 +396,10 @@ ATF_TC_BODY(fts_options_physical_nostat_type, tc)
                            { FTS_SL,   "dead",         "dead"          },
                            { FTS_D,    "dir",          "dir"           },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_SL,   "dirl",         "dirl"          },
@@ -362,6 +428,14 @@ ATF_TC_BODY(fts_options_physical_seedot, tc)
                            { FTS_DOT,  ".",            "."             },
                            { FTS_DOT,  "..",           ".."            },
                            { FTS_F,    "file",         "file"          },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DOT,  ".",            "."             },
+                           { FTS_DOT,  "..",           ".."            },
+                           { FTS_D,    "sd",           "sd"            },
+                           { FTS_DOT,  ".",            "."             },
+                           { FTS_DOT,  "..",           ".."            },
+                           { FTS_DP,   "sd",           "sd"            },
+                           { FTS_DP,   "sd",           "sd"            },
                            { FTS_SL,   "up",           "up"            },
                            { FTS_DP,   "dir",          "dir"           },
                            { FTS_SL,   "dirl",         "dirl"          },

Reply via email to