/* 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;
    }

