diff --git a/src/include/kom-types.h b/src/include/kom-types.h index 2b9518b17477b5e748f3d29d9659a806c0ff5a53..838ad4061025637009fb17132d8513d73ff99be5 100644 --- a/src/include/kom-types.h +++ b/src/include/kom-types.h @@ -1,5 +1,5 @@ /* - * $Id: kom-types.h,v 0.2 1991/09/15 10:12:59 linus Exp $ + * $Id: kom-types.h,v 0.3 1991/10/23 16:20:16 ceder Exp $ * Copyright (C) 1991 Lysator Academic Computer Association. * * This file is part of the LysKOM server. @@ -33,12 +33,12 @@ * this code, provided the people they give it to can. * * - * Author: Thomas Bellman - * Lysator Computer Club - * Linkoping University - * Sweden + * Filecreator: Thomas Bellman + * Lysator Computer Club + * Linkoping University + * Sweden * - * email: Bellman@Lysator.LiU.SE + * email: Bellman@Lysator.LiU.SE */ @@ -71,6 +71,43 @@ typedef u_long Text_no; typedef u_long Local_text_no; typedef u_long Session_no; +#ifdef PROT_a + +/* + * To uniquely identify a person, conference or text, three numbers + * are used: Universe, Site and X_{recpt,person,text}. The universe is + * omitted when it is LysKOM, or is implied by a echo conference. + */ +/* + * LysKOM, RFC-822, FidoNet, News are examples of universes. + */ +/*typedef u_long Universe;*/ + +/* + * JAKOM, lysator.liu.se, 2:504/113, foo.bar.com are examples of sites + * in the above universes. (Note that comp.lang.c is _not_ a site in + * the News universe). + */ +/*typedef u_long Site;*/ + +/* + * Fritt Forum, ceder, Per Cederqvist, comp.lang.c are examples of + * x_recpt in the above universes. + */ + +/* + * But for now, we have a System_id (sum of Universe and Site) and a + * Global_x. + */ + +typedef u_long System_id; +typedef u_long Global_recpt; +typedef u_long Global_person; +typedef u_long Global_text; + +#endif + + #define MAX_PERS_NO ((Pers_no) USHRT_MAX) #define MAX_CONF_NO ((Conf_no) USHRT_MAX) #define MAX_TEXT_NO ((Text_no) ULONG_MAX) @@ -105,8 +142,8 @@ typedef struct { u_int create_pers: 1; u_int create_conf: 1; u_int change_name: 1; - u_int flg7 : 1; /* For future use. */ - u_int flg8 : 1; + u_int extern_gw : 1; + u_int flg8 : 1; /* For future use. */ u_int flg9 : 1; u_int flg10 : 1; u_int flg11 : 1; @@ -156,36 +193,53 @@ extern const Personal_flags DEFAULT_PERSONAL_FLAGS; /* See file doc/misc_items */ -typedef enum { recpt = 0, /* 0 Recipient (conference) */ - cc_recpt = 1, /* 1 Carbon Copy recipient (extra kopia) */ -#if 0 - ..._recpt =10, /* 10 ...recipient (F|r k{nnedom) */ -/* Vad ska det heta p} engelska? */ -/* Please let this be a comment otherwise etags voids this file. */ +typedef enum { + recpt = 0, /* 0 Recipient (conference) */ + cc_recpt = 1, /* 1 Carbon Copy recipient (extra kopia) */ + comm_to = 2, /* 2 Comment to (text) */ + comm_in = 3, /* 3 Commented in (text) */ + footn_to = 4, /* 4 This is a footnote to (text) */ + footn_in = 5, /* 5 Footnote to this text in (text) */ +#ifdef PROT_a + x_author = 10, /* 10 External author (Global_name). */ #endif - comm_to = 2, /* 2 Comment to (text) */ - comm_in = 3, /* 3 Commented in (text) */ - footn_to = 4, /* 4 This is a footnote to (text) */ - footn_in = 5, /* 5 Footnote to this text in (text) */ - - loc_no = 6, /* 6 Sequence number within conference */ - rec_time = 7, /* 7 Received at (time) */ - sent_by = 8, /* 8 Sent by (person) */ - sent_at = 9 /* 9 Sent at (time) */ + loc_no = 6, /* 6 Sequence number within conference */ + rec_time = 7, /* 7 Received at (time) */ + sent_by = 8, /* 8 Sent by (person) */ + sent_at = 9 /* 9 Sent at (time) */ +#ifdef PROT_a + , + x_person = 11, /* 11 External person id. (Global_name). */ + x_recpt = 12, /* 12 External recipient. (Global_name). */ + x_text = 13, /* 13 External text. (Global_text). */ + x_system = 14 /* 14 External system identification (System_id). */ +#endif } Info_type; typedef union { Conf_no recipient; Conf_no cc_recipient; - Local_text_no local_no; - Time received_at; Text_no comment_to; Text_no commented_in; Text_no footnote_to; Text_no footnoted_in; + +#ifdef PROT_a + Global_name x_author; /* Protocol a. */ +#endif + + Local_text_no local_no; + Time received_at; Pers_no sender; Time sent_at; + +#ifdef PROT_a + Global_name global_person; + Global_name global_recpt; + Global_text global_text; + System_id system_id; +#endif } Info_datum;