|
|
1.1 ! root 1: /* nodedefs.h */ ! 2: ! 3: /* Synchronet node information structure and constant definitions */ ! 4: ! 5: /* $Id: nodedefs.h,v 1.13 2003/10/10 00:16:22 rswindell Exp $ */ ! 6: ! 7: /**************************************************************************** ! 8: * @format.tab-size 4 (Plain Text/Source Code File Header) * ! 9: * @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) * ! 10: * * ! 11: * Copyright 2000 Rob Swindell - http://www.synchro.net/copyright.html * ! 12: * * ! 13: * This program is free software; you can redistribute it and/or * ! 14: * modify it under the terms of the GNU General Public License * ! 15: * as published by the Free Software Foundation; either version 2 * ! 16: * of the License, or (at your option) any later version. * ! 17: * See the GNU General Public License for more details: gpl.txt or * ! 18: * http://www.fsf.org/copyleft/gpl.html * ! 19: * * ! 20: * Anonymous FTP access to the most recent released source is available at * ! 21: * ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net * ! 22: * * ! 23: * Anonymous CVS access to the development source and modification history * ! 24: * is available at cvs.synchro.net:/cvsroot/sbbs, example: * ! 25: * cvs -d :pserver:[email protected]:/cvsroot/sbbs login * ! 26: * (just hit return, no password is necessary) * ! 27: * cvs -d :pserver:[email protected]:/cvsroot/sbbs checkout src * ! 28: * * ! 29: * For Synchronet coding style and modification guidelines, see * ! 30: * http://www.synchro.net/source.html * ! 31: * * ! 32: * You are encouraged to submit any modifications (preferably in Unix diff * ! 33: * format) via e-mail to [email protected] * ! 34: * * ! 35: * Note: If this box doesn't appear square, then you need to fix your tabs. * ! 36: ****************************************************************************/ ! 37: ! 38: /************************************************************/ ! 39: /* Constants, macros, and typedefs for use ONLY with SBBS */ ! 40: /************************************************************/ ! 41: ! 42: #ifndef _NODEDEFS_H ! 43: #define _NODEDEFS_H ! 44: ! 45: #include "smbdefs.h" /* uchar, ushort, ulong and _PACK */ ! 46: ! 47: enum { /* Node Status */ ! 48: NODE_WFC /* Waiting for Call */ ! 49: ,NODE_LOGON /* at logon prompt */ ! 50: ,NODE_NEWUSER /* New user applying */ ! 51: ,NODE_INUSE /* In Use */ ! 52: ,NODE_QUIET /* In Use - quiet mode */ ! 53: ,NODE_OFFLINE /* Offline */ ! 54: ,NODE_NETTING /* Networking */ ! 55: ,NODE_EVENT_WAITING /* Waiting for all nodes to be inactive */ ! 56: ,NODE_EVENT_RUNNING /* Running an external event */ ! 57: ,NODE_EVENT_LIMBO /* Allowing another node to run an event */ ! 58: }; ! 59: ! 60: #define NODE_INVALID_STATUS 0xff /* Invalid status value */ ! 61: ! 62: /* Bit values for node.misc */ ! 63: #define NODE_ANON (1<<0) /* Anonymous User */ ! 64: #define NODE_LOCK (1<<1) /* Locked for sysops only */ ! 65: #define NODE_INTR (1<<2) /* Interrupted - hang up */ ! 66: #define NODE_MSGW (1<<3) /* Message is waiting (old way) */ ! 67: #define NODE_POFF (1<<4) /* Page disabled */ ! 68: #define NODE_AOFF (1<<5) /* Activity Alert disabled */ ! 69: #define NODE_UDAT (1<<6) /* User data has been updated */ ! 70: #define NODE_RRUN (1<<7) /* Re-run this node when log off */ ! 71: #define NODE_EVENT (1<<8) /* Must run node event after log off */ ! 72: #define NODE_DOWN (1<<9) /* Down this node after logoff */ ! 73: #define NODE_RPCHT (1<<10) /* Reset private chat */ ! 74: #define NODE_NMSG (1<<11) /* Node message waiting (new way) */ ! 75: #define NODE_EXT (1<<12) /* Extended info on node action */ ! 76: #define NODE_LCHAT (1<<13) /* Being pulled into local chat */ ! 77: ! 78: enum { /* Node Action */ ! 79: NODE_MAIN /* Main Prompt */ ! 80: ,NODE_RMSG /* Reading Messages */ ! 81: ,NODE_RMAL /* Reading Mail */ ! 82: ,NODE_SMAL /* Sending Mail */ ! 83: ,NODE_RTXT /* Reading G-Files */ ! 84: ,NODE_RSML /* Reading Sent Mail */ ! 85: ,NODE_PMSG /* Posting Message */ ! 86: ,NODE_AMSG /* Auto-message */ ! 87: ,NODE_XTRN /* Running External Program */ ! 88: ,NODE_DFLT /* Main Defaults Section */ ! 89: ,NODE_XFER /* Transfer Prompt */ ! 90: ,NODE_DLNG /* Downloading File */ ! 91: ,NODE_ULNG /* Uploading File */ ! 92: ,NODE_BXFR /* Bidirectional Transfer */ ! 93: ,NODE_LFIL /* Listing Files */ ! 94: ,NODE_LOGN /* Logging on */ ! 95: ,NODE_LCHT /* In Local Chat with Sysop */ ! 96: ,NODE_MCHT /* In Multi-Chat with Other Nodes */ ! 97: ,NODE_GCHT /* In Local Chat with Guru */ ! 98: ,NODE_CHAT /* In Chat Section */ ! 99: ,NODE_SYSP /* Sysop Activity */ ! 100: ,NODE_TQWK /* Transferring QWK packet */ ! 101: ,NODE_PCHT /* In Private Chat */ ! 102: ,NODE_PAGE /* Paging another node for Private Chat */ ! 103: ,NODE_RFSD /* Retrieving file from seq dev (aux=dev)*/ ! 104: ! 105: ,NODE_LAST_ACTION /* Must be last */ ! 106: }; ! 107: ! 108: #if defined(_WIN32) || defined(__BORLANDC__) /* necessary for compatibility with SBBS v2 */ ! 109: #pragma pack(push,1) ! 110: #endif ! 111: ! 112: #define SIZEOF_NODE_T 15 /* Must == sizeof(node_t) */ ! 113: ! 114: typedef struct _PACK { /* Node information kept in node.dab */ ! 115: uchar status, /* Current Status of Node */ ! 116: errors, /* Number of Critical Errors */ ! 117: action; /* Action User is doing on Node */ ! 118: ushort useron, /* User on Node */ ! 119: connection, /* Connection rate of Node */ ! 120: misc, /* Miscellaneous bits for node */ ! 121: aux; /* Auxillary word for node */ ! 122: ulong extaux; /* Extended aux dword for node */ ! 123: } node_t; ! 124: ! 125: #if defined(_WIN32) || defined(__BORLANDC__) ! 126: #pragma pack(pop) /* original packing */ ! 127: #endif ! 128: ! 129: #endif /* Don't add anything after this line */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.