i was dealing with rhel5 sysvinit sources and patches, for some reason.
and found interesting example.
there is a patch called sysvinit-2.86-console-open.patch
what it basicly does, it just tries to open /dev/console five times, if its not created yet.
————
— sysvinit-2.86/src/init.c.eieio 2006-08-10 15:34:23.000000000 -0400
+++ sysvinit-2.86/src/init.c 2006-08-10 15:34:50.000000000 -0400
@@ -531,8 +531,10 @@
/*
- Retry the open five times.
*/
– for(f = 0; f < 5; f++) + for(f = 0; f < 5; f++) { if ((fd = open(console_dev, m)) >= 0) break;
-
usleep(100);
-
}
if (fd < 0) return fd; -–-–-–-–-—