rename(a, b) char *a, *b; { if (access(a, 0) == -1) return(-1); unlink(b); if (link(a, b) == -1) return(-1); if (unlink(a) == -1) { unlink(b); return(-1); } return(0); }