Home | History | Annotate | Download | only in head
      1 /*
      2  * CDDL HEADER START
      3  *
      4  * The contents of this file are subject to the terms of the
      5  * Common Development and Distribution License, Version 1.0 only
      6  * (the "License").  You may not use this file except in compliance
      7  * with the License.
      8  *
      9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
     10  * or http://www.opensolaris.org/os/licensing.
     11  * See the License for the specific language governing permissions
     12  * and limitations under the License.
     13  *
     14  * When distributing Covered Code, include this CDDL HEADER in each
     15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     16  * If applicable, add the following below this CDDL HEADER, with the
     17  * fields enclosed by brackets "[]" replaced with your own identifying
     18  * information: Portions Copyright [yyyy] [name of copyright owner]
     19  *
     20  * CDDL HEADER END
     21  */
     22 /*	Copyright (c) 1988 AT&T	*/
     23 /*	  All Rights Reserved  	*/
     24 
     25 
     26 #ifndef	_MEMORY_H
     27 #define	_MEMORY_H
     28 
     29 #pragma ident	"%Z%%M%	%I%	%E% SMI"	/* SVr4.0 1.4.1.2 */
     30 
     31 #include <sys/types.h>
     32 
     33 #ifdef	__cplusplus
     34 extern "C" {
     35 #endif
     36 
     37 #if defined(__STDC__)
     38 extern void *memccpy(void *, const void *, int, size_t);
     39 #if __cplusplus >= 199711L
     40 namespace std {
     41 extern const void *memchr(const void *, int, size_t);
     42 #ifndef _MEMCHR_INLINE
     43 #define	_MEMCHR_INLINE
     44 extern "C++" {
     45 	inline void *memchr(void * __s, int __c, size_t __n) {
     46 		return (void*)memchr((const void *) __s, __c, __n);
     47 	}
     48 }
     49 #endif /* _MEMCHR_INLINE */
     50 } /* end of namespace std */
     51 using std::memchr;
     52 #else
     53 extern void *memchr(const void *, int, size_t);
     54 #endif
     55 extern void *memcpy(void *, const void *, size_t);
     56 extern void *memset(void *, int, size_t);
     57 extern int memcmp(const void *, const void *, size_t);
     58 #else
     59 extern void *memccpy();
     60 extern void *memchr();
     61 extern void *memcpy();
     62 extern void *memset();
     63 extern int memcmp();
     64 #endif
     65 
     66 #ifdef	__cplusplus
     67 }
     68 #endif
     69 
     70 #endif	/* _MEMORY_H */
     71