static char *sccsid
= "@(#)strip.c 4.4 (Berkeley) %G%";
pagesize
= getpagesize();
signal(SIGQUIT
, SIG_IGN
);
tname
= mktemp("/tmp/sXXXXX");
close(creat(tname
, 0600));
printf("cannot create temp file\n");
read(f
, (char *)&head
, sizeof(head
));
printf("%s not in a.out format\n", name
);
if ((head
.a_syms
== 0) && (head
.a_trsize
== 0) && (head
.a_drsize
==0)) {
printf("%s already stripped\n", name
);
size
= (long)head
.a_text
+ head
.a_data
;
head
.a_syms
= head
.a_trsize
= head
.a_drsize
= 0 ;
write(tf
, (char *)&head
, sizeof(head
));
if (head
.a_magic
== ZMAGIC
)
size
+= pagesize
- sizeof (head
);
if (copy(name
, f
, tf
, size
)) {
printf("%s cannot recreate\n", name
);
if(copy(name
, tf
, f
, size
))
printf("%s unexpected eof\n", name
);
printf("%s unexpected write eof\n", name
);