Annotation of 43BSDReno/usr.bin/tn3270/general/general.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1988 Regents of the University of California.
                      3:  * All rights reserved.
                      4:  *
                      5:  * Redistribution and use in source and binary forms are permitted
                      6:  * provided that the above copyright notice and this paragraph are
                      7:  * duplicated in all such forms and that any documentation,
                      8:  * advertising materials, and other materials related to such
                      9:  * distribution and use acknowledge that the software was developed
                     10:  * by the University of California, Berkeley.  The name of the
                     11:  * University may not be used to endorse or promote products derived
                     12:  * from this software without specific prior written permission.
                     13:  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
                     14:  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
                     15:  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     16:  *
                     17:  *     @(#)general.h   4.1 (Berkeley) 12/4/88
                     18:  */
                     19: 
                     20: /*
                     21:  * Some general definitions.
                     22:  */
                     23: 
                     24: #define        numberof(x)     (sizeof x/sizeof x[0])
                     25: #define        highestof(x)    (numberof(x)-1)
                     26: 
                     27: #if    defined(unix)
                     28: #define        ClearElement(x)         bzero((char *)&x, sizeof x)
                     29: #define        ClearArray(x)           bzero((char *)x, sizeof x)
                     30: #else  /* defined(unix) */
                     31: #define        ClearElement(x)         memset((char *)&x, 0, sizeof x)
                     32: #define        ClearArray(x)           memset((char *)x, 0, sizeof x)
                     33: #endif /* defined(unix) */
                     34: 
                     35: #if    defined(unix)           /* Define BSD equivalent mem* functions */
                     36: #define        memcpy(dest,src,n)      bcopy(src,dest,n)
                     37: #define        memmove(dest,src,n)     bcopy(src,dest,n)
                     38: #define        memset(s,c,n)           if (c == 0) { \
                     39:                                    bzero(s,n); \
                     40:                                } else { \
                     41:                                    register char *src = s; \
                     42:                                    register int count = n; \
                     43:                                        \
                     44:                                    while (count--) { \
                     45:                                        *src++ = c; \
                     46:                                    } \
                     47:                                }
                     48: #define        memcmp(s1,s2,n)         bcmp(s1,s2,n)
                     49: #endif /* defined(unix) */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.