#ifndef BUILTINS_H
#define BUILTINS_H
#include "defs.h"
#define FORK YES
#define NO_FORK NO
struct builtin
{
voidfunc b_handler ;
boolean_e b_fork_server ;
} ;
typedef struct builtin builtin_s ;
#define BUILTIN_HANDLER( bp ) ( (bp)->b_handler )
#define BUILTIN_INVOKE( bp, serp ) (*(bp)->b_handler)( serp )
#define BUILTIN_FORKS( bp ) ( (bp)->b_fork_server == YES )
struct builtin_service
{
const char *bs_name ;
int bs_socket_type ;
builtin_s bs_handle ;
} ;
const builtin_s *builtin_find(const char *service_name,int type);
const builtin_s *builtin_lookup(const struct builtin_service services[],const char *service_name,int type);
#endif