/*
 *  check -- データが消去されているか調べる
 *
 *  revision history:
 *	0.0: Oct. 26, 2001 by Dai ISHIJIMA
 *	0.1: May   1, 2004
 */

#include <sys/types.h>
#include <sys/uio.h>
#include <unistd.h>


#define BSIZ 512
#define STDIN 0
#define STDOUT 1

#define ERROR 5
#define OK 0
#define NONZERO 1


/* 一文字出力 */
void putch(int fd, unsigned char ch)
{
    write(fd, &ch, 1);
}


/* 文字列出力 */
void myputs(int fd, char *s)
{
    while (*s) {
	putch(fd, *s);
	++s;
    }
}


int main()
{
    static unsigned char buf[BSIZ];
    int i;

    if (read(STDIN, buf, BSIZ) != BSIZ) {
	myputs(STDOUT, "read failed\n");
	exit(ERROR);
    }
    for (i = 1; i < BSIZ; i++) {
	if (buf[i] != buf[0]) {
	    myputs(STDOUT, "not erased\n");
	    exit(ERROR);
	}
    }
    if (buf[0] != 0) {
	myputs(STDOUT, "may be erased, but not zero\n");
	exit(NONZERO);
    }
    exit(0);
}

/* Local Variables: */
/* compile-command:"cc -Wall -O -static -o check check.c" */
/* End: */
