# Test Case: Broken Symlink **Test ID**: TC040-symlink-broken ## Objective Verify `readlink(2)` succeeds for a deterministic broken link while following the target fails with exact `ENOENT`. ## Fixture Use `images/inline.erofs` and `source/inline/brokenlink`. Evidence asserts symlink mode, layout 2, and target length 29. ## Procedure ```sh test -L "$mnt/brokenlink" readlink /tmp/repo22-g1/source/inline/brokenlink > /tmp/tc040-source-target readlink "$mnt/brokenlink" > /tmp/tc040-mount-target cmp /tmp/tc040-source-target /tmp/tc040-mount-target ./read_probe expect-error "$mnt/brokenlink" 2 ./read_probe expect-error "$mnt/brokenlink" 2 ``` ## Expected Results - Both `readlink` targets equal `/nonexistent/repo22-g1-target`. - Both follow attempts return errno 2 (`ENOENT`), while the symlink itself remains visible; no kernel error or cleanup failure occurs.