home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / old / ckermit60 / ckvold.c < prev    next >
C/C++ Source or Header  |  2020-01-01  |  1KB  |  76 lines

  1. #module ckvold "1.0-004"
  2.  
  3. /* C K V O L D  --  C-Kermit file system support for VAX/VMS V4.  */
  4.  
  5. /* Edit history
  6.  * 001 22-Jan-91 wb  Initial version with memcpy, memmove
  7.  * 002 24-Apr-91 wb  Added memset
  8.  * 003 01-Jul-91 wb  Added strstr
  9.  * 004 26-Nov-91 wb  Added system
  10.  * 006 10-Nov-96 lh  All (and getcwd in CKCNET) needed w VAXCRTL 4.00922
  11.  *                   (VMS 4.4) only strstr needed w/ VAXCRTL 4.01322 (VMS 4.6)
  12.  */
  13.  
  14. void *memcpy(d, s, n)
  15. void *d, *s;
  16. register int n;
  17. {
  18.     register char *ss = (char *)s, *dd = (char *)d;
  19.     while (n-- > 0)
  20.     *dd++ = *ss++;
  21.     return d;
  22. }
  23.  
  24. void *memmove(d, s, n)
  25. void *d;
  26. const void *s;
  27. register int n;
  28. {
  29.     register char *dd = (char *)d, *ss = (char *)s;
  30.     if (dd < ss || dd - ss >= n) {
  31.     while (n-- > 0)
  32.         *dd++ = *ss++;
  33.     } else if (n > 0) {
  34.     dd += n;
  35.     ss += n;
  36.     while (n-- > 0)
  37.         *--dd = *--ss;
  38.     }
  39.     return d;
  40. }
  41.  
  42. void *memset(d, c, n)
  43. void *d;
  44. register int c;
  45. register int n;
  46. {
  47.     register char *dd = (char *)d;
  48.     while (n-- > 0)
  49.     *dd++ = c;
  50.     return d;
  51. }
  52.  
  53. char *strstr(a, b)
  54. const char *a;
  55. const char *b;
  56. {
  57.     int len;
  58.  
  59.     if (!a || !b) return((char *)0);
  60.     if (!*b) return(a);
  61.     len = strlen(b);
  62.     while (*a) {
  63.         if (!strncmp(a, b, len)) return(a);
  64.         a++;
  65.     }
  66.     return((char *)0);
  67. }        
  68.  
  69. int system(s)
  70. char *s;
  71. {
  72.     while (*s == ' ' || *s == '$') s++;
  73.     zsyscmd(s);
  74.     return(1);
  75. }
  76.