The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/mach/mig_support.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* 
    2  * Mach Operating System
    3  * Copyright (c) 1993,1992 Carnegie Mellon University
    4  * All Rights Reserved.
    5  * 
    6  * Permission to use, copy, modify and distribute this software and its
    7  * documentation is hereby granted, provided that both the copyright
    8  * notice and this permission notice appear in all copies of the
    9  * software, derivative works or modified versions, and any portions
   10  * thereof, and that both notices appear in supporting documentation.
   11  * 
   12  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
   13  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
   14  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
   15  * 
   16  * Carnegie Mellon requests users of this software to return to
   17  * 
   18  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
   19  *  School of Computer Science
   20  *  Carnegie Mellon University
   21  *  Pittsburgh PA 15213-3890
   22  * 
   23  * any improvements or extensions that they make and grant Carnegie Mellon
   24  * the rights to redistribute these changes.
   25  */
   26 /*
   27  * HISTORY
   28  * $Log:        mig_support.h,v $
   29  * Revision 2.7  93/11/17  17:42:23  dbg
   30  *      Kernel now includes <kern/memory.h> for declaration of bcopy.
   31  *      [93/09/30            dbg]
   32  * 
   33  * Revision 2.6  93/05/14  15:10:07  rvb
   34  *      #include string.h -> strings.h
   35  *      [93/05/14            rvb]
   36  * 
   37  * Revision 2.5  93/05/10  21:20:03  rvb
   38  *      size_t --> vm_size_t.
   39  *      [93/04/09            af]
   40  * 
   41  * Revision 2.4  93/05/10  17:47:54  rvb
   42  *      Totally eliminate size_t.
   43  *      [93/05/04  17:42:35  rvb]
   44  * 
   45  * Revision 2.3  93/03/11  13:46:26  danner
   46  *      eliminate size_t.
   47  *      [93/03/09            danner]
   48  * 
   49  * Revision 2.2  93/01/14  17:45:03  danner
   50  *      Changed the argument to mig_init to void * for compatibility
   51  *      with the C-Threads mig_init.
   52  *      [92/12/18            pds]
   53  *      Define memcpy to be bcopy in the kernel, otherwise include string.h.
   54  *      Added include of sys/types.h.
   55  *      [92/12/17            pds]
   56  *      Created.
   57  *      [92/12/11            pds]
   58  * 
   59  */
   60 
   61 /*
   62  *  Abstract:
   63  *      Header file for support routines called by MiG generated interfaces.
   64  *
   65  */
   66 
   67 #ifndef _MACH_MIG_SUPPORT_H_
   68 #define _MACH_MIG_SUPPORT_H_
   69 
   70 #include <mach/std_types.h>
   71 #include <mach/message.h>
   72 #include <sys/types.h>
   73 
   74 #if     defined(KERNEL)
   75 
   76 #if     !defined(bcopy)
   77 
   78 #include <kern/memory.h>        /* bcopy */
   79 #define memcpy(_dst,_src,_len)  bcopy((_src),(_dst),(_len))
   80 
   81 #endif  /* defined(bcopy) */
   82 
   83 #else   /* not defined(KERNEL) */
   84 
   85 #include <strings.h>
   86 
   87 #endif  /* defined(KERNEL) */
   88 
   89 extern void             mig_init(void *_first);
   90 
   91 extern void             mig_allocate(vm_address_t *_addr_p, vm_size_t _size);
   92 
   93 extern void             mig_deallocate(vm_address_t _addr, vm_size_t _size);
   94 
   95 extern void             mig_dealloc_reply_port(void);
   96 
   97 extern mach_port_t      mig_get_reply_port(void);
   98 
   99 extern void             mig_reply_setup(const mach_msg_header_t *_request,
  100                                         mach_msg_header_t *reply);
  101 
  102 #ifndef KERNEL
  103 extern vm_size_t        mig_strncpy(char *_dest, const char *_src,
  104                                     vm_size_t _len);
  105 #endif
  106 
  107 #endif  /* not defined(_MACH_MIG_SUPPORT_H_) */

Cache object: 03f5a3ca05c666380f0c67d1342bc3e5


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.