/* Funktion setstdin
 * setzt stdin auf Datei filename
 * Ergebnis: 1 (true) im Erfolgsfall
 *           0 (false) bei Fehler 
 *                     (errno enthaelt in diesem Fall die Fehlerursache
 */
#include <fcntl.h>

int setstdin(char *filename) {

	int fd;

	/* zuerst angegebene Datei oeffnen, liefert Dateideskriptor fd */
	if ((fd=open(filename, O_RDONLY)) == -1){
		return(0);
	}

	close(0);	/* bisherigen stdin schliessen */
	dup(fd);	/* neu geoeffneten Dateideskriptor auf Deskriptor 0 (=stdin) duplizieren */
	close(fd);	/* nicht mehr benoetigten Original-Dateideskriptor fd schliessen */
	return(1);
}

