+findtapeblksize()
+{
+ register long i;
+
+ for (i = 0; i < ntrec; i++)
+ ((struct s_spcl *)&tbf[i * TP_BSIZE])->c_magic = 0;
+ bct = 0;
+#ifdef RRESTORE
+ i = rmtread(tbf, ntrec * TP_BSIZE);
+#else
+ i = read(mt, tbf, ntrec * TP_BSIZE);
+#endif
+ if (i <= 0) {
+ perror("Tape read error");
+ done(1);
+ }
+ if (i % TP_BSIZE != 0) {
+ fprintf(stderr, "Tape block size (%d) %s (%d)\n",
+ i, "is not a multiple of dump block size", TP_BSIZE);
+ done(1);
+ }
+ ntrec = i / TP_BSIZE;
+ vprintf(stdout, "Tape block size is %d\n", ntrec);
+}
+