scsh-0.5/scsh/sighandlers.c

88 lines
2.2 KiB
C

/* This is an Scheme48/C interface file,
** automatically generated by cig.
*/
#include <stdio.h>
#include <stdlib.h> /* For malloc. */
#include "libcig.h"
#include <errno.h>
/* Make sure foreign-function stubs interface to the C funs correctly: */
#include "sighandlers1.h"
scheme_value df_sig2interrupt(long nargs, scheme_value *args)
{
extern int sig2interrupt(int );
scheme_value ret1;
int r1;
cig_check_nargs(1, nargs, "sig2interrupt");
r1 = sig2interrupt(EXTRACT_FIXNUM(args[0]));
ret1 = ENTER_FIXNUM(r1);
return ret1;
}
scheme_value df_do_default_sigaction(long nargs, scheme_value *args)
{
extern void do_default_sigaction(int );
cig_check_nargs(1, nargs, "do_default_sigaction");
do_default_sigaction(EXTRACT_FIXNUM(args[0]));
return SCHFALSE;
}
scheme_value df_scsh_set_sig(long nargs, scheme_value *args)
{
extern scheme_value scsh_set_sig(int , int , int , int *, int *);
scheme_value ret1;
scheme_value r1;
int r2;
int r3;
cig_check_nargs(4, nargs, "scsh_set_sig");
r1 = scsh_set_sig(EXTRACT_FIXNUM(args[3]), EXTRACT_FIXNUM(args[2]), EXTRACT_FIXNUM(args[1]), &r2, &r3);
ret1 = r1;
VECTOR_REF(*args,0) = ENTER_FIXNUM(r2);
VECTOR_REF(*args,1) = ENTER_FIXNUM(r3);
return ret1;
}
scheme_value df_scsh_get_sig(long nargs, scheme_value *args)
{
extern scheme_value scsh_get_sig(int , int *, int *);
scheme_value ret1;
scheme_value r1;
int r2;
int r3;
cig_check_nargs(2, nargs, "scsh_get_sig");
r1 = scsh_get_sig(EXTRACT_FIXNUM(args[1]), &r2, &r3);
ret1 = r1;
VECTOR_REF(*args,0) = ENTER_FIXNUM(r2);
VECTOR_REF(*args,1) = ENTER_FIXNUM(r3);
return ret1;
}
scheme_value df_install_scsh_handlers(long nargs, scheme_value *args)
{
extern void install_scsh_handlers(void);
cig_check_nargs(0, nargs, "install_scsh_handlers");
install_scsh_handlers();
return SCHFALSE;
}
scheme_value df_get_int_handlers(long nargs, scheme_value *args)
{
extern scheme_value get_int_handlers(void);
scheme_value ret1;
scheme_value r1;
cig_check_nargs(0, nargs, "get_int_handlers");
r1 = get_int_handlers();
ret1 = r1;
return ret1;
}