#ifndef _MISC_PROTOS_H_
#define _MISC_PROTOS_H_
#include <stdarg.h>
#include <string.h>
#include <machine/setjmp.h>
#include <mach/boolean.h>
#include <mach/message.h>
#include <mach/machine/vm_types.h>
#include <ipc/ipc_types.h>
extern void setbit(
int which,
int *bitmap);
extern void clrbit(
int which,
int *bitmap);
extern int ffsbit(
int *bitmap);
extern int ffs(
unsigned int mask);
extern int testbit(
int which,
int *bitmap);
extern void bcopy(
const char *from,
char *to,
vm_size_t nbytes);
extern void ovbcopy(
const char *from,
char *to,
vm_size_t nbytes);
extern int bcmp(
const char *a,
const char *b,
vm_size_t len);
extern void bzero(
char *from,
vm_size_t nbytes);
extern boolean_t copyin(
const char *user_addr,
char *kernel_addr,
vm_size_t nbytes);
extern boolean_t copyinstr(
const char *user_addr,
char *kernel_addr,
vm_size_t max,
vm_size_t *actual);
extern boolean_t copyinmsg(
const char *user_addr,
char *kernel_addr,
mach_msg_size_t nbytes);
extern boolean_t copyout(
const char *kernel_addr,
char *user_addr,
vm_size_t nbytes);
extern boolean_t copyoutmsg(
const char *kernel_addr,
char *user_addr,
mach_msg_size_t nbytes);
extern int sscanf(const char *input, const char *fmt, ...);
extern integer_t sprintf(char *buf, const char *fmt, ...);
extern void printf(const char *format, ...);
extern void printf_init(void);
extern void panic(const char *string, ...);
extern void panic_init(void);
extern void log(int level, char *fmt, ...);
void
_doprnt(
register const char *fmt,
va_list *argp,
void (*putc)(char),
int radix);
extern void safe_gets(
char *str,
int maxlen);
extern void cnputcusr(char);
extern void cnputc(char);
extern int cngetc(void);
extern int cnmaygetc(void);
extern int _setjmp(
jmp_buf_t *jmp_buf);
extern int _longjmp(
jmp_buf_t *jmp_buf,
int value);
extern void bootstrap_create(void);
extern void halt_cpu(void);
extern void halt_all_cpus(
boolean_t reboot);
extern void Debugger(
const char * message);
extern void delay(
int n);
extern char *machine_boot_info(
char *buf,
vm_size_t buf_len);
extern void machine_callstack(
natural_t *buf,
vm_size_t callstack_max);
extern void consider_machine_collect(void);
extern void norma_bootstrap(void);
#if DIPC
extern boolean_t no_bootstrap_task(void);
extern ipc_port_t get_root_master_device_port(void);
#endif
#endif