* rd_header() - read object file header. *
* rd_text() - read program text. *
* rd_gda() - read global data area. *
- * rd_proctab() - read procedure descriptors, *
* rd_close() - close object file. *
* *
************************************************************************/
NTEXT = rd_int(psize);
NDATA = rd_int(psize);
NPROC = rd_int(psize);
+ if (NPROC < 0 || NPROC * psize * 3 > NTEXT)
+ fatal("Bad proc table");
ENTRY = rd_int(psize);
if (ENTRY < 0 || ENTRY >= NPROC)
fatal("Bad entry point");
dt_prot(i2p(4), psize);
}
-rd_proctab()
-{
- register long p;
-
- init_proctab();
- for (p = 0; p < NPROC; p++) {
- register long nloc = rd_int(psize);
- register ptr ep = i2p(rd_int(psize));
-
- add_proc(nloc, ep);
- }
- end_init_proctab();
-}
-
rd_close()
{
fclose(load_fp);