/*
 * aliases: the ALIASES mail file.
 *
 * This is a pretty vanilla KAarray child, except for the read
 * and print functions (oh! excuse me, `methods')
 *
 * Copyright (c) 1998 David L Parsons 
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms are permitted
 * provided that the above copyright notice and this paragraph are
 * duplicated in all such forms and that any documentation,
 * advertising materials, and other materials related to such
 * distribution and use acknowledge that the software was developed
 * by David L Parsons (orc@pell.chi.il.us).  My name may not be used
 * to endorse or promote products derived from this software without
 * specific prior written permission.  THIS SOFTWARE IS PROVIDED
 * ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
 * WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE.
 */
#ifndef _ALIASES_D
#define _ALIASES_D

#ifdef TESTING
#define ALIASES	"ALIASES"
#else
#define ALIASES	"/etc/aliases"
#endif

#include <basis/KAarray.H>

class Aliases:public KAarray {
public:
    Aliases();			/* load configuration from disk */

    int commit();		/* commit changes to disk */
    int Refresh();		/* load latest configuration */
    int dirty();		/* has the disk configuration been
				 * changed out from under us?
				 */

    int read(FILE *in = stdin);
    int print(FILE *out = stdout);

    /* pull the plug on various bits of KAarray functionality */
    inline int changed(int x)		{ return 0; x = !x; }
    inline int changed()		{ return KAarray::changed(); }
} ;

#endif/*_ALIASES_D*/
