
#ifndef __COOKIE
#define __COOKIE

# include <portab.h>


/* Fehlermeldungen */
#define CK_NO_ERROR      0
#define CK_NO_JAR       -1
#define CK_NO_FREE      -2
#define CK_NO_FOUND     -3
#define CK_EXISTED      -4



typedef struct
{
	UBYTE  id[4];
	LONG   value;
} COOKIE_STRUCT;



/* Adresse des Zeigers auf den Jar */
#define _p_cookies     0x5a0L




COOKIE_STRUCT  *GetJarPointer( VOID );

VOID CreateCookieStruct( COOKIE_STRUCT *ptr,
                         UBYTE *id, LONG value );

LONG GetJarSize( VOID );
LONG GetJarUsed( VOID );


WORD FindCookie( UBYTE *id, LONG *value );
WORD InsertCookie( COOKIE_STRUCT *cp );
WORD DeleteCookie( UBYTE *id );

LONG ChangeCookieValue( UBYTE *id, LONG new_value );

WORD GetCookieExplanation( UBYTE *id, LONG value, UBYTE *res );


#endif