]> code.citadel.org Git - citadel.git/blobdiff - citadel/techdoc/hack.txt
* Variable names, comments, documentation, etc... removed the acronym 'BBS'
[citadel.git] / citadel / techdoc / hack.txt
index 5cceb84bb2dd498b0662512d93e8d0ebab4d51b7..b85b3c74fb7822463b83283490945f5b5f8e9eb2 100644 (file)
@@ -1,5 +1,5 @@
             ------------------------------------------------------
-             The totally incomplete guide to Citadel/UX internals
+             The totally incomplete guide to Citadel internals
             ------------------------------------------------------
 
  Citadel has evolved quite a bit since its early days, and the data structures
@@ -27,7 +27,7 @@ this file look something like this:
 struct ctdluser {                       /* User record                      */
         int version;                    /* Cit vers. which created this rec */
         uid_t uid;                      /* Associate with a unix account?   */
-        char password[32];              /* password (for BBS-only users)    */
+        char password[32];              /* password (for Citadel-only users)*/
         unsigned flags;                 /* See US_ flags below              */
         long timescalled;               /* Total number of logins           */
         long posted;                    /* Number of messages posted (ever) */
@@ -239,14 +239,18 @@ all software should be written to IGNORE fields not currently defined.
 BYTE   Mnemonic        Comments
 
 A      Author          Name of originator of message.
+B      Big message     This is a flag which indicates that the message is
+                        big, and Citadel is storing the body in a separate
+                        record.  You will never see this field because the
+                        internal API handles it.
 D      Destination     Contains name of the system this message should
                        be sent to, for mail routing (private mail only).
-E      Extended ID     A persistent alphanumeric Message ID used for
+E      Exclusive ID    A persistent alphanumeric Message ID used for
                        network replication.  When a message arrives that
-                       contains an Extended ID, any existing messages which
-                       contain the same Extended ID and are *older* than this
+                       contains an Exclusive ID, any existing messages which
+                       contain the same Exclusive ID and are *older* than this
                        message should be deleted.  If there exist any messages
-                       with the same Extended ID that are *newer*, then this
+                       with the same Exclusive ID that are *newer*, then this
                        message should be dropped.
 F      rFc822 address  For Internet mail, this is the delivery address of the
                        message author.
@@ -276,7 +280,7 @@ T   Date/Time       A 32-bit integer containing the date and time of
                         the message in standard UNIX format (the number
                         of seconds since January 1, 1970 GMT).
 U       Subject         Optional.  Developers may choose whether they wish to
-                        generate or display subject fields.  Citadel/UX does
+                        generate or display subject fields.  Citadel does
                         not generate them, but it does print them when found.
 0      Error           This field is typically never found in a message on
                        disk or in transit.  Message scanning modules are
@@ -289,14 +293,14 @@ U       Subject         Optional.  Developers may choose whether they wish to
 Let <FF> be a 0xFF byte, and <0> be a null (0x00) byte.  Then a message
 which prints as...
 
-Apr 12, 1988 23:16 From Test User In Network Test> @lifesys (Life BBS)
+Apr 12, 1988 23:16 From Test User In Network Test> @lifesys (Life Central)
 Have a nice day!
 
  might be stored as...
 <FF><40><0>I12345<0>Pneighbor!lifesys!test_user<0>T576918988<0>    (continued)
 -----------|Mesg ID#|--Message Path---------------|--Date------
 
-AThe Test User<0>ONetwork Test<0>Nlifesys<0>HLife BBS<0>MHave a nice day!<0>
+AThe Test User<0>ONetwork Test<0>Nlifesys<0>HLife Central<0>MHave a nice day!<0>
 |-----Author-----|-Room name-----|-nodename-|Human Name-|--Message text-----
 
  Weird things can happen if fields are missing, especially if you use the
@@ -348,7 +352,7 @@ please see network.txt on its operation and functionality (if any).
 
                        Portability issues
  
- Citadel/UX is 64-bit clean, architecture-independent, and Year 2000
+ Citadel is 64-bit clean, architecture-independent, and Year 2000
 compliant.  The software should compile on any POSIX compliant system with
 a full pthreads implementation and TCP/IP support.  In the future we may
 try to port it to non-POSIX systems as well.