|
|
1.1 ! root 1: /* ! 2: ** Sendmail ! 3: ** Copyright (c) 1983 Eric P. Allman ! 4: ** Berkeley, California ! 5: ** ! 6: ** Copyright (c) 1983 Regents of the University of California. ! 7: ** All rights reserved. The Berkeley software License Agreement ! 8: ** specifies the terms and conditions for redistribution. ! 9: */ ! 10: ! 11: #ifndef lint ! 12: static char SccsId[] = "@(#)bcopy.c 5.1 (Berkeley) 6/7/85"; ! 13: #endif not lint ! 14: ! 15: # include "useful.h" ! 16: ! 17: /* ! 18: ** BCOPY -- block copy. ! 19: ** ! 20: ** Parameters: ! 21: ** s -- source of bytes. ! 22: ** d -- destination of bytes. ! 23: ** l -- length of block to move. ! 24: ** ! 25: ** Returns: ! 26: ** none. ! 27: ** ! 28: ** Side Effects: ! 29: ** copies 's' to 'd' for 'l' bytes. ! 30: ** ! 31: ** Notes: ! 32: ** This can be easily written in assembly language on ! 33: ** machines like VAXes if performance is needed. ! 34: */ ! 35: ! 36: /*VARARGS0*/ ! 37: bcopy(s, d, l) ! 38: register char *s, *d; ! 39: register int l; ! 40: { ! 41: while (l-- > 0) ! 42: *d++ = *s++; ! 43: } ! 44: /* ! 45: ** BZERO -- zero a block of memory ! 46: ** ! 47: ** Parameters: ! 48: ** p -- location to clear. ! 49: ** l -- number of bytes to clear. ! 50: ** ! 51: ** Returns: ! 52: ** none. ! 53: ** ! 54: ** Side Effects: ! 55: ** none. ! 56: */ ! 57: ! 58: bzero(p, l) ! 59: register char *p; ! 60: register int l; ! 61: { ! 62: while (l-- > 0) ! 63: *p++ = 0; ! 64: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.