summaryrefslogtreecommitdiff
path: root/src/regress/lib/libc/telldir/telldir.c
diff options
context:
space:
mode:
authorcvs2svn <admin@example.com>2025-04-14 17:32:06 +0000
committercvs2svn <admin@example.com>2025-04-14 17:32:06 +0000
commiteb8dd9dca1228af0cd132f515509051ecfabf6f6 (patch)
treeedb6da6af7e865d488dc1a29309f1e1ec226e603 /src/regress/lib/libc/telldir/telldir.c
parent247f0352e0ed72a4f476db9dc91f4d982bc83eb2 (diff)
downloadopenbsd-tb_20250414.tar.gz
openbsd-tb_20250414.tar.bz2
openbsd-tb_20250414.zip
This commit was manufactured by cvs2git to create tag 'tb_20250414'.tb_20250414
Diffstat (limited to 'src/regress/lib/libc/telldir/telldir.c')
-rw-r--r--src/regress/lib/libc/telldir/telldir.c71
1 files changed, 0 insertions, 71 deletions
diff --git a/src/regress/lib/libc/telldir/telldir.c b/src/regress/lib/libc/telldir/telldir.c
deleted file mode 100644
index d2879cc701..0000000000
--- a/src/regress/lib/libc/telldir/telldir.c
+++ /dev/null
@@ -1,71 +0,0 @@
1/* $OpenBSD: telldir.c,v 1.4 2013/11/03 00:20:24 schwarze Exp $ */
2
3/* Written by Otto Moerbeek, 2006, Public domain. */
4
5#include <sys/types.h>
6#include <dirent.h>
7#include <err.h>
8#include <limits.h>
9#include <stdio.h>
10#include <string.h>
11
12#include "utils.h"
13
14#define NFILES 1000
15
16static void
17longloop(DIR *dp, int i)
18{
19 struct dirent *f;
20 char file[PATH_MAX];
21 long pos, t, remember = -1;
22
23 rewinddir(dp);
24 snprintf(file, sizeof file, "%d", i);
25
26 /* Scan through all files, remember where file i is. */
27
28 for (;;) {
29 pos = telldir(dp);
30 f = readdir(dp);
31 if (f == NULL)
32 break;
33 if (strcmp(file, f->d_name) == 0)
34 remember = pos;
35 }
36 if (remember == -1)
37 errx(1, "remember %s", file);
38
39 /* Go back to i, checking seekdir, telldir and readdir. */
40
41 seekdir(dp, remember);
42 if ((t = telldir(dp)) != remember)
43 errx(1, "tell after seek %s %ld != %ld", file, t, remember);
44 if ((t = telldir(dp)) != remember)
45 errx(1, "tell after tell %s %ld != %ld", file, t, remember);
46 f = readdir(dp);
47 if (f == NULL)
48 errx(1, "readdir %s at %ld", file, remember);
49
50 if (strcmp(f->d_name, file) != 0)
51 errx(1, "name mismatch: %s != %s", f->d_name, file);
52}
53
54void
55longseek(void)
56{
57 DIR *dp;
58 int i;
59
60 createfiles(NFILES);
61
62 dp = opendir("d");
63 if (dp == NULL)
64 err(1, "longseek: opendir");
65
66 for (i = 0; i < NFILES; i++)
67 longloop(dp, (i + NFILES/2) % NFILES);
68
69 closedir(dp);
70 delfiles();
71}