/* -*- mode: C -*-  Time-stamp: "2003-09-07 13:26:25 jemarch"
 *
 *      File:        hush.h
 *      Author:      Jose E. Marchesi <jemarch@gnu.org>
 *      Date:        9/2003
 *
 *      Common headers for hush.
 *
 */


#include "shell.h"
#include <hurd/trivfs.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <sys/mman.h>




/*
 * Supported operations on entry points
 *
 */


#define on_read 0
#define on_write 1
#define on_exec 2
#define on_goaway 3
#define on_undefined -1

/*
 * hush_operation structure
 *
 */

typedef struct hush_operation 
{

  WORD_DESC *iovar;
  COMMAND *action;

} hush_operation_t;  


/*
 * hushtrans structure
 *
 */

typedef struct hushtrans 
{
  
  struct {
    hush_operation_t *goaway;
    hush_operation_t *read;
    hush_operation_t *write;
    hush_operation_t *exec;

  } operation;
    
} hushtrans_t;


