home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / sources / misc / 3916 < prev    next >
Encoding:
Text File  |  1992-09-08  |  62.9 KB  |  1,804 lines

  1. Newsgroups: comp.sources.misc
  2. Path: sparky!kent
  3. From: sandy@godzilla.Quotron.COM (Sanford Zelkovitz)
  4. Subject:  v32i025:  xbbs - A Bulletin Board System for System V, Part10/11
  5. Message-ID: <1992Sep9.045521.26727@sparky.imd.sterling.com>
  6. Followup-To: comp.sources.d
  7. X-Md4-Signature: 1cdf415fa2f15c7117332bcba0a72d2a
  8. Sender: kent@sparky.imd.sterling.com (Kent Landfield)
  9. Organization: Sterling Software
  10. References: <csm-v32i016=xbbs.234515@sparky.IMD.Sterling.COM>
  11. Date: Wed, 9 Sep 1992 04:55:21 GMT
  12. Approved: kent@sparky.imd.sterling.com
  13. Lines: 1789
  14.  
  15. Submitted-by: sandy@godzilla.Quotron.COM (Sanford Zelkovitz)
  16. Posting-number: Volume 32, Issue 25
  17. Archive-name: xbbs/part10
  18. Environment: SYSV, Xenix
  19.  
  20. #! /bin/sh
  21. # This is a shell archive.  Remove anything before this line, then feed it
  22. # into a shell via "sh file" or similar.  To overwrite existing files,
  23. # type "sh file -c".
  24. # Contents:  MAKE_areas.bbs MAKE_msg.bbs MAKEfeatures MAKElistfile
  25. #   MAKEmsg.bbs MAKEquestion Makefile.386 Makefile.SVR4L My.config.bbs
  26. #   Read.Me Sep02.msg allign/allign.c allign/fallign.c areas.bbs
  27. #   bulletin.2400 bulletin.bbs bulletin.cmn bulletin.dvr bulletin.enh
  28. #   bulletin.ext bulletin.inp bulletin.path bulletin.red bulletin.sys
  29. #   bulletin.upl bulletin.uucp chatbbs/chat.h dlmsg.bbs etc_profile
  30. #   features.bbs help.bbs helpfile.bbs helpmsg.bbs helpsig.bbs
  31. #   listfile.bbs listuser/listuser.c listuser/listuser.read.
  32. #   listuser/listusers.c msgareas.bbs msgpack/packmisc.c question.qst
  33. #   sealink/Makefile.286 sealink/Makefile.386 sealink/Readme sigs.bbs
  34. #   system.bbs today/moontx.h today/potm.c unixmsg.bbs
  35. # Wrapped by kent@sparky on Fri Sep  4 12:48:56 1992
  36. PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
  37. echo If this archive is complete, you will see the following message:
  38. echo '          "shar: End of archive 10 (of 11)."'
  39. if test -f 'MAKE_areas.bbs' -a "${1}" != "-c" ; then 
  40.   echo shar: Will not clobber existing file \"'MAKE_areas.bbs'\"
  41. else
  42.   echo shar: Extracting \"'MAKE_areas.bbs'\" \(1319 characters\)
  43.   sed "s/^X//" >'MAKE_areas.bbs' <<'END_OF_FILE'
  44. XThe file, areas.bbs, contains the path information for uploading, downloading,
  45. Xand listing of files along with the access privilege of the download 
  46. Xdirectory. The format of the file is as follows:
  47. X    1) The first line of the file can be used as a RULER SINCE IT IS NOT USED.
  48. X    2) The following lines in the file have the following format:
  49. X       a) Columns 1-13 The download path. Please note the ORGPATH is added
  50. X          to the contents. An example is as follows: ORGPATH = /usr/sandy/bbs
  51. X          and columns 1-13 contain bbssoftware; therefore, the entire path
  52. X          name = /usr/sandy/bbs/bbssoftware.
  53. X     3) Column 14 must be a space
  54. X     4) Columns 15-55 contain the description of the download directory
  55. X     5) Column 56 must be a space
  56. X     6) Columns 57-61 contain the DIRECTORY PRIVILEGE - left justified.
  57. X        Therefore, you can set your privileges from 1 - 32767. WARNING, if
  58. X        you give your user access to the files section from the main menu and
  59. X        DO NOT give him access to any of the directories, he will NOT be able
  60. X        to get out of the initial directory change!
  61. X     7) Columns 62-63 must be spaces
  62. X     8) Columns 64-79 contain the UPLOAD path for that download directory.
  63. X
  64. XPlease download areas.bbs and use it as an example.
  65. XA MAXIMUM of 99 directories can be used!
  66. END_OF_FILE
  67.   if test 1319 -ne `wc -c <'MAKE_areas.bbs'`; then
  68.     echo shar: \"'MAKE_areas.bbs'\" unpacked with wrong size!
  69.   fi
  70.   # end of 'MAKE_areas.bbs'
  71. fi
  72. if test -f 'MAKE_msg.bbs' -a "${1}" != "-c" ; then 
  73.   echo shar: Will not clobber existing file \"'MAKE_msg.bbs'\"
  74. else
  75.   echo shar: Extracting \"'MAKE_msg.bbs'\" \(1390 characters\)
  76.   sed "s/^X//" >'MAKE_msg.bbs' <<'END_OF_FILE'
  77. XThe file, msgareas.bbs, contain the path information for the different message
  78. Xbases. The format is as follows:
  79. X    1) The first line of the file can be used as a RULER SINCE IT IS NOT USED.
  80. X    2) The following lines in the file have the following format:
  81. X       a) Columns 1-13 The download path. Please note the ORGPATH is added
  82. X          to the contents. An example is as follows: ORGPATH = /usr/sandy/bbs
  83. X          and columns 1-13 contain general; therefore, the entire path
  84. X          name = /usr/sandy/bbs/general.
  85. X     3) Column 14 must be a space
  86. X     4) Columns 15-55 contain the description of the download directory
  87. X     5) Column 56 must be a space
  88. X     6) Columns 57-61 contain the DIRECTORY PRIVILEGE - left justified.
  89. X        Therefore, you can set your privileges from 1 - 32767. WARNING, if
  90. X        you give your user access to the msg section from the main menu and
  91. X        DO NOT give him access to any of the directories, he will NOT be able
  92. X        to get out of the initial directory change!
  93. X
  94. XPlease download msgareas.bbs and use it as an example.
  95. XA MAXIMUM of 99 directories can be used!
  96. X                         New as of 11/20/86
  97. XTo select the message area to use for the "GOOD-BYE" message, immediately
  98. Xfollowing the privilege level for that message base, insert an asterisk (*).
  99. XThis will then, automatically, select that msg base for the parting message.
  100. END_OF_FILE
  101.   if test 1390 -ne `wc -c <'MAKE_msg.bbs'`; then
  102.     echo shar: \"'MAKE_msg.bbs'\" unpacked with wrong size!
  103.   fi
  104.   # end of 'MAKE_msg.bbs'
  105. fi
  106. if test -f 'MAKEfeatures' -a "${1}" != "-c" ; then 
  107.   echo shar: Will not clobber existing file \"'MAKEfeatures'\"
  108. else
  109.   echo shar: Extracting \"'MAKEfeatures'\" \(1056 characters\)
  110.   sed "s/^X//" >'MAKEfeatures' <<'END_OF_FILE'
  111. XTo make features.bbs, you can use the file, features.bbs as a guide. 
  112. XThe format of the file is as follows:
  113. XLINE 1 ------------ruler
  114. XLine 2 - N              The actual programs that you make available to you
  115. X                        users.
  116. XEach line is broken up into fields. The fields are as follows:
  117. XColumn 01 - 50         The full path name of the program plus commandline
  118. XColumn   51            A space
  119. XColumn 52 - 72         Description of program
  120. XColumn   73            A space
  121. XColumn 74 - 78         Privilege level assigned to the program
  122. XColumn   79            An asterisk or space
  123. XIf column 79 is an asterisk, '*', then the BBS software will switch back to
  124. Xthe default terminal parameters and then execute the program. After the 
  125. Xprogram completes, it will then switch back to the BBS terminal parameters.
  126. XThe user will be notified of the switching so that he/she can change his/her
  127. Xterminal program if necessary.
  128. XIf column 79 is a space, the BBS program will redirect stdout to a temporary
  129. Xfile and then send the output to the bbs user.
  130. END_OF_FILE
  131.   if test 1056 -ne `wc -c <'MAKEfeatures'`; then
  132.     echo shar: \"'MAKEfeatures'\" unpacked with wrong size!
  133.   fi
  134.   # end of 'MAKEfeatures'
  135. fi
  136. if test -f 'MAKElistfile' -a "${1}" != "-c" ; then 
  137.   echo shar: Will not clobber existing file \"'MAKElistfile'\"
  138. else
  139.   echo shar: Extracting \"'MAKElistfile'\" \(445 characters\)
  140.   sed "s/^X//" >'MAKElistfile' <<'END_OF_FILE'
  141. XTo make listfile.bbs, you can use the file, listfile.bbs as a guide. 
  142. XThe format of the file is as follows:
  143. XLINE 1 ------------ruler
  144. XLine 2 - N              The actual files that you make available to you
  145. X                        users.
  146. XEach line is broken up into fields. The fields are as follows:
  147. XColumn 01 - 50         The full path name of the file to list.
  148. XColumn   51            A space
  149. XColumn 52 - 72         Description of the file.
  150. END_OF_FILE
  151.   if test 445 -ne `wc -c <'MAKElistfile'`; then
  152.     echo shar: \"'MAKElistfile'\" unpacked with wrong size!
  153.   fi
  154.   # end of 'MAKElistfile'
  155. fi
  156. if test -f 'MAKEmsg.bbs' -a "${1}" != "-c" ; then 
  157.   echo shar: Will not clobber existing file \"'MAKEmsg.bbs'\"
  158. else
  159.   echo shar: Extracting \"'MAKEmsg.bbs'\" \(861 characters\)
  160.   sed "s/^X//" >'MAKEmsg.bbs' <<'END_OF_FILE'
  161. XA new option has been added to Version 4.10 and above that allows you to make
  162. Xdifferent daily messages for each day of the week for a FULL year. This message
  163. Xis then printed out to your users during their login process into the bbs.
  164. X
  165. XYou can put whatever you wish into this file. The file can be as little as
  166. Xone line or as large as you desire! Page control is automatically supported
  167. Xduring the output.
  168. XYou may wish to use this option to wish your users a "Merry Christmas" or a
  169. X"Happy New Year".
  170. XThe file name is in the form of Month_Day.msg. An example of the file that
  171. Xwould be displayed on September 02, 1987 would be as follows:
  172. X
  173. X                               Sep02.msg
  174. X
  175. X
  176. XPlease note that if the file is not found, NO message will be displayed to
  177. Xyour user; therefore, this is option is COMPLETELY optional and can be
  178. Xignored when not needed.
  179. X
  180. XSandy
  181. END_OF_FILE
  182.   if test 861 -ne `wc -c <'MAKEmsg.bbs'`; then
  183.     echo shar: \"'MAKEmsg.bbs'\" unpacked with wrong size!
  184.   fi
  185.   # end of 'MAKEmsg.bbs'
  186. fi
  187. if test -f 'MAKEquestion' -a "${1}" != "-c" ; then 
  188.   echo shar: Will not clobber existing file \"'MAKEquestion'\"
  189. else
  190.   echo shar: Extracting \"'MAKEquestion'\" \(1383 characters\)
  191.   sed "s/^X//" >'MAKEquestion' <<'END_OF_FILE'
  192. XThis file contains the information needed to make your questionnaire.
  193. XThe following commands are available in column 1:
  194. X!       Output the rest of the line and wait for an input
  195. X@       Output the rest of the line and send a crlf
  196. X&       Same as '@' without the terminal crlf
  197. X$       Outputs a '?' and waits for an input
  198. X%       Output crlf
  199. XY || y  Output the rest of the line and set FLAG true if response is a Y or y
  200. XN || n  Output the rest of the line and set FLAG true if response is an N or n
  201. X{       Start conditional statements ( execute the following lines if FLAG
  202. X        is equal to true
  203. X}       End conditional statements
  204. X/       Exit questionnaire - Normally used as a conditional statement
  205. X
  206. X
  207. XAn example of a questionnaire is as follows:
  208. X@XBBS QUESTIONNAIRE
  209. XNDo you want to continue the questionnaire (y/n)
  210. X{
  211. X/
  212. X}
  213. X!Input your full name
  214. X!Input your home telephone number
  215. X!Input your work telephone number
  216. X&Input your full address ( 5 lines available )
  217. X$
  218. X$
  219. X$
  220. X$
  221. X$
  222. X!Input your profession
  223. X@Thank you for answering my questionnaire
  224. X
  225. X
  226. X
  227. XYou may use the above example as your questionnaire.
  228. X
  229. X
  230. XThe file that you generate is called question.bbs and is located in the same
  231. Xdirectory as the rest of the .bbs files.
  232. X
  233. XThe file that is generated by the bbs software ( the answers to the
  234. Xquestionnaire ) is called answer.bbs and is located in the same directory as
  235. Xquestion.bbs.
  236. X
  237. X
  238. XSandy
  239. END_OF_FILE
  240.   if test 1383 -ne `wc -c <'MAKEquestion'`; then
  241.     echo shar: \"'MAKEquestion'\" unpacked with wrong size!
  242.   fi
  243.   # end of 'MAKEquestion'
  244. fi
  245. if test -f 'Makefile.386' -a "${1}" != "-c" ; then 
  246.   echo shar: Will not clobber existing file \"'Makefile.386'\"
  247. else
  248.   echo shar: Extracting \"'Makefile.386'\" \(1534 characters\)
  249.   sed "s/^X//" >'Makefile.386' <<'END_OF_FILE'
  250. Xbbsc1: bbsc1.o bbsc2.o bbscport.o bbsclock.o bbscfile.o bbscmisc.o bbscio.o \
  251. Xbbscarea.o bbscmsga.o bbscqust.o bbscbult.o bbscadds.o bbsclist.o bbsczip.o \
  252. Xbbscconf.o bbscsumm.o bbscsigs.o bbscmenu.o bbscarc.o bbscunzip.o
  253. X    cc  bbsc1.o bbsc2.o bbscport.o bbsclock.o bbscfile.o bbscmisc.o \
  254. Xbbscio.o bbscarea.o bbscmsga.o bbscqust.o bbscbult.o bbscadds.o bbsclist.o \
  255. Xbbsczip.o bbscconf.o bbscsumm.o bbscsigs.o bbscmenu.o bbscarc.o bbscunzip.o \
  256. X-lx -o bbsc1
  257. X    strip bbsc1
  258. Xbbsc1.o: bbsc1.c bbscdef.h bbsc12.h
  259. X    cc -c -O bbsc1.c
  260. Xbbsc2.o: bbsc2.c bbscdef.h bbsc12.h
  261. X    cc -c -O bbsc2.c
  262. Xbbscmenu.o: bbscmenu.c bbscdef.h bbsc12.h
  263. X    cc -c -O bbscmenu.c
  264. Xbbscport.o: bbscport.c bbscdef.h
  265. X    cc -c -O bbscport.c
  266. Xbbsclock.o: bbsclock.c bbscdef.h
  267. X    cc -c -O bbsclock.c
  268. Xbbscfile.o: bbscfile.c bbscdef.h
  269. X    cc -c -O bbscfile.c
  270. Xbbscmisc.o: bbscmisc.c bbscdef.h
  271. X    cc -c -O bbscmisc.c
  272. Xbbscio.o: bbscio.c bbscdef.h
  273. X    cc -c -O bbscio.c
  274. Xbbscarea.o: bbscarea.c bbscdef.h
  275. X    cc -c -O bbscarea.c
  276. Xbbscsigs.o: bbscsigs.c bbscdef.h
  277. X    cc -c -O bbscsigs.c
  278. Xbbscmsga.o: bbscmsga.c bbscdef.h
  279. X    cc -c -O bbscmsga.c
  280. Xbbscqust.o: bbscqust.c bbscdef.h
  281. X    cc -c -O bbscqust.c
  282. Xbbscbult.o: bbscbult.c bbscdef.h
  283. X    cc -c -O bbscbult.c
  284. Xbbscadds.o: bbscadds.c bbscdef.h
  285. X    cc -c -O bbscadds.c
  286. Xbbsczip.o: bbsczip.c bbscdef.h
  287. X    cc -c -O bbsczip.c
  288. Xbbsclist.o: bbsclist.c bbscdef.h
  289. X    cc -c -O bbsclist.c
  290. Xbbscconf.o: bbscconf.c bbscdef.h
  291. X    cc -c -O bbscconf.c
  292. Xbbscsumm.o: bbscsumm.c bbscdef.h
  293. X    cc -c -O bbscsumm.c
  294. Xbbscarc.o: bbscarc.c
  295. X    cc -c -O -Zp bbscarc.c
  296. Xbbscunzip.o: bbscunzip.c
  297. X    cc -c -O bbscunzip.c
  298. END_OF_FILE
  299.   if test 1534 -ne `wc -c <'Makefile.386'`; then
  300.     echo shar: \"'Makefile.386'\" unpacked with wrong size!
  301.   fi
  302.   chmod +x 'Makefile.386'
  303.   # end of 'Makefile.386'
  304. fi
  305. if test -f 'Makefile.SVR4L' -a "${1}" != "-c" ; then 
  306.   echo shar: Will not clobber existing file \"'Makefile.SVR4L'\"
  307. else
  308.   echo shar: Extracting \"'Makefile.SVR4L'\" \(1557 characters\)
  309.   sed "s/^X//" >'Makefile.SVR4L' <<'END_OF_FILE'
  310. Xbbsc1: bbsc1.o bbsc2.o bbscport.o bbsclock.o bbscfile.o bbscmisc.o bbscio.o \
  311. Xbbscarea.o bbscmsga.o bbscqust.o bbscbult.o bbscadds.o bbsclist.o bbsczip.o \
  312. Xbbscconf.o bbscsumm.o bbscsigs.o bbscmenu.o bbscarc.o bbscunzip.o
  313. X    cc  bbsc1.o bbsc2.o bbscport.o bbsclock.o bbscfile.o bbscmisc.o \
  314. Xbbscio.o bbscarea.o bbscmsga.o bbscqust.o bbscbult.o bbscadds.o bbsclist.o \
  315. Xbbsczip.o bbscconf.o bbscsumm.o bbscsigs.o bbscmenu.o bbscarc.o bbscunzip.o \
  316. X-lx -o bbsc1
  317. X    strip bbsc1
  318. Xbbsc1.o: bbsc1.c bbscdef.h bbsc12.h
  319. X    cc -c -O -DSYSV bbsc1.c
  320. Xbbsc2.o: bbsc2.c bbscdef.h bbsc12.h
  321. X    cc -c -O bbsc2.c
  322. Xbbscmenu.o: bbscmenu.c bbscdef.h bbsc12.h
  323. X    cc -c -O bbscmenu.c
  324. Xbbscport.o: bbscport.c bbscdef.h
  325. X    cc -c -O bbscport.c
  326. Xbbsclock.o: bbsclock.c bbscdef.h
  327. X    cc -c -O bbsclock.c
  328. Xbbscfile.o: bbscfile.c bbscdef.h
  329. X    cc -c -O bbscfile.c
  330. Xbbscmisc.o: bbscmisc.c bbscdef.h
  331. X    cc -c -O bbscmisc.c
  332. Xbbscio.o: bbscio.c bbscdef.h
  333. X    cc -c -O bbscio.c
  334. Xbbscarea.o: bbscarea.c bbscdef.h
  335. X    cc -c -O bbscarea.c
  336. Xbbscsigs.o: bbscsigs.c bbscdef.h
  337. X    cc -c -O bbscsigs.c
  338. Xbbscmsga.o: bbscmsga.c bbscdef.h
  339. X    cc -c -O bbscmsga.c
  340. Xbbscqust.o: bbscqust.c bbscdef.h
  341. X    cc -c -O bbscqust.c
  342. Xbbscbult.o: bbscbult.c bbscdef.h
  343. X    cc -c -O bbscbult.c
  344. Xbbscadds.o: bbscadds.c bbscdef.h
  345. X    cc -c -O bbscadds.c
  346. Xbbsczip.o: bbsczip.c bbscdef.h
  347. X    cc -c -O bbsczip.c
  348. Xbbsclist.o: bbsclist.c bbscdef.h
  349. X    cc -c -O bbsclist.c
  350. Xbbscconf.o: bbscconf.c bbscdef.h
  351. X    cc -c -O -DSYSV -DESIX54 bbscconf.c
  352. Xbbscsumm.o: bbscsumm.c bbscdef.h
  353. X    cc -c -O bbscsumm.c
  354. Xbbscarc.o: bbscarc.c
  355. X    cc -c -O -Zp bbscarc.c
  356. Xbbscunzip.o: bbscunzip.c
  357. X    cc -c -O bbscunzip.c
  358. END_OF_FILE
  359.   if test 1557 -ne `wc -c <'Makefile.SVR4L'`; then
  360.     echo shar: \"'Makefile.SVR4L'\" unpacked with wrong size!
  361.   fi
  362.   chmod +x 'Makefile.SVR4L'
  363.   # end of 'Makefile.SVR4L'
  364. fi
  365. if test -f 'My.config.bbs' -a "${1}" != "-c" ; then 
  366.   echo shar: Will not clobber existing file \"'My.config.bbs'\"
  367. else
  368.   echo shar: Extracting \"'My.config.bbs'\" \(1205 characters\)
  369.   sed "s/^X//" >'My.config.bbs' <<'END_OF_FILE'
  370. X/user/bbsfiles/welcome.bbs
  371. X/user/bbsfiles/bulletin.bbs
  372. X/user/bbsfiles/newuser.bbs
  373. X/user/bbsfiles/system.bbs
  374. X/user/bbsfiles/callers.bbs
  375. X/user/bbsfiles/lastcall.bbs
  376. X/user/bbsfiles/users.bbs
  377. X/user/bbsfiles/unixmsg.bbs
  378. X/user/bbsfiles/dlmsg.bbs
  379. X/user/bbsfiles/humor.bbs
  380. X/user/bbsfiles/help.bbs
  381. X/user/bbsfiles/helpfile.bbs
  382. X/user/bbsfiles/helpmsg.bbs
  383. X/user/bbsfiles/userpriv.bbs
  384. X/user/bbsfiles/mainpriv.bbs
  385. X/user/bbsfiles/filepriv.bbs
  386. X/user/bbsfiles/question.bbs
  387. X/user/bbsfiles/answer.bbs
  388. X/user/bbsfiles/features.bbs
  389. X/user/bbsfiles/listfile.bbs
  390. X/user/bbsfiles/today > /tmp/today
  391. X/user/bbsfiles/
  392. X/user/bbsfiles/areas.bbs
  393. X/user/bbsfiles/msgareas.bbs
  394. X/user/bbs/
  395. X/user/bbsfiles/checksum r 
  396. X/user/bbsfiles/checksum s 
  397. X/user/bbsfiles/crc r 
  398. X/user/bbsfiles/crc s 
  399. X/user/bbsfiles/ymod r 
  400. X/user/bbsfiles/ymod s 
  401. X/user/bbsfiles/rb
  402. X/user/bbsfiles/sb -k 
  403. X/user/bbsfiles/rz
  404. X/user/bbsfiles/sz 
  405. X/user/bbsfiles/kermit -i -q -s 
  406. X/user/bbsfiles/kermit -i -w -q -r
  407. Xls /user/bbs > /tmp/flist
  408. X/user/bbsfiles/sealink -r 
  409. X/user/bbsfiles/sealink -s 
  410. XSanford Zelkovitz
  411. X300
  412. X5400
  413. X180
  414. X5
  415. X32767
  416. X32767
  417. X500
  418. X/bin/tar -tvf 
  419. X/usr/bin/zcat 
  420. X/usr/bin/arc -v 
  421. X/usr/bin/unzip -v 
  422. X/dev/tty12
  423. X/dev/tty01
  424. X/bin/sh -i
  425. X1
  426. X/usr/bin/readnews
  427. X/usr/bin/postnews
  428. END_OF_FILE
  429.   if test 1205 -ne `wc -c <'My.config.bbs'`; then
  430.     echo shar: \"'My.config.bbs'\" unpacked with wrong size!
  431.   fi
  432.   # end of 'My.config.bbs'
  433. fi
  434. if test -f 'Read.Me' -a "${1}" != "-c" ; then 
  435.   echo shar: Will not clobber existing file \"'Read.Me'\"
  436. else
  437.   echo shar: Extracting \"'Read.Me'\" \(322 characters\)
  438.   sed "s/^X//" >'Read.Me' <<'END_OF_FILE'
  439. XMy address is as follows:
  440. X                Sanford Zelkovitz
  441. X                5852 Maxson Drive
  442. X                Cypress, Ca   90630
  443. XPlease drop me a line and let me know how this code is working for you.
  444. X
  445. XIf you would like to send a donation to help cover my equipment expense, that
  446. Xwould be greatly appreciated!
  447. XSandy
  448. X
  449. END_OF_FILE
  450.   if test 322 -ne `wc -c <'Read.Me'`; then
  451.     echo shar: \"'Read.Me'\" unpacked with wrong size!
  452.   fi
  453.   # end of 'Read.Me'
  454. fi
  455. if test -f 'Sep02.msg' -a "${1}" != "-c" ; then 
  456.   echo shar: Will not clobber existing file \"'Sep02.msg'\"
  457. else
  458.   echo shar: Extracting \"'Sep02.msg'\" \(669 characters\)
  459.   sed "s/^X//" >'Sep02.msg' <<'END_OF_FILE'
  460. XSeptember 02, 1987
  461. X
  462. XVersion 4.10 is now online. This version gives you the following additional
  463. Xcapabilities over 4.00:
  464. X   1) The optional capability of having a daily message for your users.
  465. X      ( This message utilizes this new capabity.) You can now make up different
  466. X      messages for each day of the week for one full year! The software will
  467. X      only output the predetermined message for that day. The format of the
  468. X      file is as follows: Month_day.msg. As an example, the message for today
  469. X      is as follows: Sep02.msg
  470. X
  471. X   2) You can now select which SHELL you wish to use for the U(nix) command
  472. X      from the main menu.
  473. X   3) Cosmetic improvements
  474. END_OF_FILE
  475.   if test 669 -ne `wc -c <'Sep02.msg'`; then
  476.     echo shar: \"'Sep02.msg'\" unpacked with wrong size!
  477.   fi
  478.   # end of 'Sep02.msg'
  479. fi
  480. if test -f 'allign/allign.c' -a "${1}" != "-c" ; then 
  481.   echo shar: Will not clobber existing file \"'allign/allign.c'\"
  482. else
  483.   echo shar: Extracting \"'allign/allign.c'\" \(1464 characters\)
  484.   sed "s/^X//" >'allign/allign.c' <<'END_OF_FILE'
  485. X#include <stdio.h>
  486. X#include <string.h>
  487. X/* This is the NEW version for 4.00 and above */
  488. X/*               July 22, 1987                */
  489. Xmain()
  490. X    {
  491. X    FILE *inbuf, *outbuf;
  492. X    int code;
  493. X    int count;
  494. X    char infile[99], outfile[99];
  495. X    char u_fname[99], u_lname[99], u_password[99], u_time1[99];
  496. X    char u_date1[99], u_time2[99], u_date2[99], u_city[99];
  497. X    char l_f_base[4], l_m_base[4], xprt[4], toggl[4];
  498. X    printf("\nInput the old user file name: ");
  499. X    scanf("%s", infile);
  500. X    printf("\n");
  501. X    strcpy(outfile, infile);
  502. X    strcat(outfile,".OLD");
  503. X    (void)unlink(outfile);
  504. X    (void)link(infile,outfile);
  505. X    (void)unlink(infile);
  506. X    if((inbuf = fopen(outfile, "r" )) == NULL)
  507. X        {
  508. X        printf("\n\rError opening old users file.\n\r");
  509. X        exit(1);
  510. X        }
  511. X    if((outbuf = fopen(infile, "w" )) == NULL)
  512. X        {
  513. X        printf("\n\rError opening new users file.\n\r");
  514. X        exit(1);
  515. X        }
  516. X    while(1)
  517. X        {
  518. X        code = fscanf(inbuf,"%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~\n",
  519. X            u_fname, u_lname, u_password, u_time1, u_date1,
  520. X            u_time2, u_date2, u_city,l_f_base,l_m_base,xprt,toggl);
  521. X        if(code < 12 ) break;
  522. X        code = fprintf(outbuf,"%s~%s~%s~%s~%s~%s~%s~%s~%s~%s~%s~%s~\n",
  523. X            u_fname, u_lname, u_password, u_time1, u_date1,
  524. X            u_time2, u_date2, u_city,l_f_base,l_m_base,xprt,toggl);
  525. X        }
  526. X        fclose(inbuf);
  527. X        fclose(outbuf);
  528. X        strcpy(outfile,"chmod 660 ");
  529. X        strcat(outfile, infile);
  530. X        (void)system(outfile);
  531. X        strcpy(outfile,"chown bbs ");
  532. X        strcat(outfile, infile);
  533. X        (void)system(outfile);
  534. X    }
  535. END_OF_FILE
  536.   if test 1464 -ne `wc -c <'allign/allign.c'`; then
  537.     echo shar: \"'allign/allign.c'\" unpacked with wrong size!
  538.   fi
  539.   # end of 'allign/allign.c'
  540. fi
  541. if test -f 'allign/fallign.c' -a "${1}" != "-c" ; then 
  542.   echo shar: Will not clobber existing file \"'allign/fallign.c'\"
  543. else
  544.   echo shar: Extracting \"'allign/fallign.c'\" \(1114 characters\)
  545.   sed "s/^X//" >'allign/fallign.c' <<'END_OF_FILE'
  546. X#include <stdio.h>
  547. X#include <string.h>
  548. X#include <sys/locking.h>
  549. Xmain()
  550. X{
  551. X    FILE           *inbuf, *outbuf;
  552. X    int             code;
  553. X    int             count;
  554. X    char            infile[99], outfile[99];
  555. X    int            datar;
  556. X    int        fds;
  557. X    printf("\nInput the old user file name: ");
  558. X    scanf("%s", infile);
  559. X    printf("\n");
  560. X    strcpy(outfile, infile);
  561. X    strcat(outfile, ".OLD");
  562. X    (void) unlink(outfile);
  563. X    (void) link(infile, outfile);
  564. X    (void) unlink(infile);
  565. X    if ((inbuf = fopen(outfile, "r")) == NULL) {
  566. X        printf("\n\rError opening old users file.\n\r");
  567. X        exit(1);
  568. X    }
  569. X    if ((outbuf = fopen(infile, "a+")) == NULL) {
  570. X        printf("\n\rError opening new users file.\n\r");
  571. X        exit(1);
  572. X    }
  573. X    fds = fileno(outbuf);
  574. X    rewind(outbuf);
  575. X    locking(fds, LK_LOCK, 0L);
  576. X    while ((datar = fgetc(inbuf)) != EOF) {
  577. X        if (datar == '~')
  578. X            {
  579. X            datar = fgetc(inbuf);
  580. X            if( datar == ' ') datar = '\n';
  581. X            putc('~', outbuf);
  582. X            }
  583. X        putc(datar, outbuf);
  584. X    }
  585. X    fclose(inbuf);
  586. X    fclose(outbuf);
  587. X    strcpy(outfile, "chmod 660 ");
  588. X    strcat(outfile, infile);
  589. X    (void) system(outfile);
  590. X    strcpy(outfile, "chown bbs ");
  591. X    strcat(outfile, infile);
  592. X    (void) system(outfile);
  593. X}
  594. END_OF_FILE
  595.   if test 1114 -ne `wc -c <'allign/fallign.c'`; then
  596.     echo shar: \"'allign/fallign.c'\" unpacked with wrong size!
  597.   fi
  598.   # end of 'allign/fallign.c'
  599. fi
  600. if test -f 'areas.bbs' -a "${1}" != "-c" ; then 
  601.   echo shar: Will not clobber existing file \"'areas.bbs'\"
  602. else
  603.   echo shar: Extracting \"'areas.bbs'\" \(366 characters\)
  604.   sed "s/^X//" >'areas.bbs' <<'END_OF_FILE'
  605. XDownload Path Description of File Area                  Privs  Upload Path    
  606. Xbbssoftware   BBS Software                              1      uploads 
  607. Xunix          Unix/Xenix Files                          4      uploads 
  608. Xmsdos         MS/PC DOS Files                           5      uploads
  609. Xuploads       New Uploads ----- Not as yet checked      5      uploads 
  610. END_OF_FILE
  611.   if test 366 -ne `wc -c <'areas.bbs'`; then
  612.     echo shar: \"'areas.bbs'\" unpacked with wrong size!
  613.   fi
  614.   # end of 'areas.bbs'
  615. fi
  616. if test -f 'bulletin.2400' -a "${1}" != "-c" ; then 
  617.   echo shar: Will not clobber existing file \"'bulletin.2400'\"
  618. else
  619.   echo shar: Extracting \"'bulletin.2400'\" \(705 characters\)
  620.   sed "s/^X//" >'bulletin.2400' <<'END_OF_FILE'
  621. X
  622. XThere seems to be a misunderstanding on how to utilize the bbs at 2400 baud.
  623. XAs my welcome message states and from many messages that I have left, still,
  624. Xmany users still do not know how to switch to 2400 baud! Therefore, I will
  625. Xrepeat the instructions once again as a bulletin. Please, DO NOT leave
  626. Xme any more messages on this subject.
  627. X
  628. XTo switch to 2400 baud, once you get the initial connect and the garbage
  629. Xcharacters stop being displayed, sent me a BREAK and the getty will switch the
  630. Xcomm port to 2400 baud. If you send another break, the system will switch back
  631. Xto 1200 baud. As stated above, the BREAK sequence is used by Unix/Xenix as the
  632. Xcommand to change baud rates prior to a login.
  633. XSandy
  634. END_OF_FILE
  635.   if test 705 -ne `wc -c <'bulletin.2400'`; then
  636.     echo shar: \"'bulletin.2400'\" unpacked with wrong size!
  637.   fi
  638.   # end of 'bulletin.2400'
  639. fi
  640. if test -f 'bulletin.bbs' -a "${1}" != "-c" ; then 
  641.   echo shar: Will not clobber existing file \"'bulletin.bbs'\"
  642. else
  643.   echo shar: Extracting \"'bulletin.bbs'\" \(891 characters\)
  644.   sed "s/^X//" >'bulletin.bbs' <<'END_OF_FILE'
  645. XBulletin_name Description of Bulletin                   Privs    
  646. Xbulletin.mod  Modification history to XBBS              1             
  647. Xbulletin.hot  All about the "hot keys" used by the bbs! 1
  648. Xbulletin.msg  How to set up the system!                 1
  649. Xbulletin.reg  Registration policy                       1
  650. Xbulletin.sys  This system                               1
  651. Xbulletin.ext  Primary & secondary extensions used on sys1
  652. Xbulletin.sun  SUN version of XBBS                       1
  653. Xbulletin.cmn  Common user mistakes (** Please Read **)  1
  654. Xbulletin.9600 How to connect at 19.2K/9600 baud!        1
  655. Xbulletin.path UUCP path to alphacm                      1
  656. Xbulletin.uucp How to connect to this system via uucp    1
  657. Xbulletin.bug  Bug fix for SCO HDBuucp in version 2.3.0  1
  658. Xbulletin.job  Jobs available at Braintec Corporation    1
  659. Xbulletin.zip  The Z(ip file menu)                       1
  660. END_OF_FILE
  661.   if test 891 -ne `wc -c <'bulletin.bbs'`; then
  662.     echo shar: \"'bulletin.bbs'\" unpacked with wrong size!
  663.   fi
  664.   # end of 'bulletin.bbs'
  665. fi
  666. if test -f 'bulletin.cmn' -a "${1}" != "-c" ; then 
  667.   echo shar: Will not clobber existing file \"'bulletin.cmn'\"
  668. else
  669.   echo shar: Extracting \"'bulletin.cmn'\" \(870 characters\)
  670.   sed "s/^X//" >'bulletin.cmn' <<'END_OF_FILE'
  671. X
  672. XA COMMON mistake that MANY users have been making is that ALL COMMANDS are
  673. XNOT case sensitive. That is, you can use either upper or lower case 
  674. Xcharacters. The ONLY thing that is case sensitive are the file names used
  675. Xin downloading and uploading. Like all other BBS software, both upper and lower
  676. Xcases can be used in any of the menus or options.
  677. XAnother option, which is neglected, is the capability of stacking a directory
  678. Xnumber to the A(rea change) option from within the message and file sections.
  679. XBasically, you do not have to list out the list of directories, unless you
  680. Xwant to. If you know that you want to switch to directory 3, all you have to
  681. Xtype is 'a 3' ( note: the ' characters were added only for clarification ).
  682. XActually, any of the following combinations will work: 'a 3' 'a3' 'a;3' or
  683. Xand non-numeric character between the a and the 3!
  684. X
  685. X
  686. XSandy
  687. X
  688. END_OF_FILE
  689.   if test 870 -ne `wc -c <'bulletin.cmn'`; then
  690.     echo shar: \"'bulletin.cmn'\" unpacked with wrong size!
  691.   fi
  692.   # end of 'bulletin.cmn'
  693. fi
  694. if test -f 'bulletin.dvr' -a "${1}" != "-c" ; then 
  695.   echo shar: Will not clobber existing file \"'bulletin.dvr'\"
  696. else
  697.   echo shar: Extracting \"'bulletin.dvr'\" \(1511 characters\)
  698.   sed "s/^X//" >'bulletin.dvr' <<'END_OF_FILE'
  699. X              ######  ####### #     #   ###    #####  #######
  700. X              #     # #       #     #    #    #     # #
  701. X              #     # #       #     #    #    #       #
  702. X              #     # #####   #     #    #    #       #####
  703. X              #     # #        #   #     #    #       #
  704. X              #     # #         # #      #    #     # #
  705. X              ######  #######    #      ###    #####  #######
  706. X          ######  ######    ###   #     # ####### ######   #####
  707. X          #     # #     #    #    #     # #       #     # #     #
  708. X          #     # #     #    #    #     # #       #     # #
  709. X          #     # ######     #    #     # #####   ######   #####
  710. X          #     # #   #      #     #   #  #       #   #         #
  711. X          #     # #    #     #      # #   #       #    #  #     #
  712. X          ######  #     #   ###      #    ####### #     #  #####
  713. X              #     # ####### ####### ######  ####### ######
  714. X              ##    # #       #       #     # #       #     #
  715. X              # #   # #       #       #     # #       #     #
  716. X              #  #  # #####   #####   #     # #####   #     #
  717. X              #   # # #       #       #     # #       #     #
  718. X              #    ## #       #       #     # #       #     #
  719. X              #     # ####### ####### ######  ####### ######
  720. X
  721. X
  722. X
  723. XThere have been MANY request made to me for device drivers for Xenix. If you
  724. Xhappen to have written one that you use, could you please upload load them to
  725. Xme so that other users may also benefit.
  726. XThank you,
  727. XSandy
  728. END_OF_FILE
  729.   if test 1511 -ne `wc -c <'bulletin.dvr'`; then
  730.     echo shar: \"'bulletin.dvr'\" unpacked with wrong size!
  731.   fi
  732.   # end of 'bulletin.dvr'
  733. fi
  734. if test -f 'bulletin.enh' -a "${1}" != "-c" ; then 
  735.   echo shar: Will not clobber existing file \"'bulletin.enh'\"
  736. else
  737.   echo shar: Extracting \"'bulletin.enh'\" \(720 characters\)
  738.   sed "s/^X//" >'bulletin.enh' <<'END_OF_FILE'
  739. X
  740. XThe following system enhancements are NOW in effect:
  741. X1) The system is running under a standard SysV.3 init using a standard
  742. X   inittab.
  743. X2) The getty for the comm lines is now /usr/lib/uucp/uugetty ( modified to use
  744. X   the SCO ungetty ).
  745. X3) The default baud rate is now 2400 baud and ANY character will switch the
  746. X   baud rate to 1200 baud if a framing error is detected. Therefore, the
  747. X   BREAK sequence is now no longer needed!
  748. X
  749. X
  750. XNote: To see the difference, while in the main menu, use the A(dditional
  751. X      features) option. Perform the following commands: who -a, who -r,  
  752. X      and ps -ef.
  753. X      I am presently awaiting a release, to place into the public domain,
  754. X      my ported executables for Xenix.
  755. X
  756. X
  757. END_OF_FILE
  758.   if test 720 -ne `wc -c <'bulletin.enh'`; then
  759.     echo shar: \"'bulletin.enh'\" unpacked with wrong size!
  760.   fi
  761.   # end of 'bulletin.enh'
  762. fi
  763. if test -f 'bulletin.ext' -a "${1}" != "-c" ; then 
  764.   echo shar: Will not clobber existing file \"'bulletin.ext'\"
  765. else
  766.   echo shar: Extracting \"'bulletin.ext'\" \(803 characters\)
  767.   sed "s/^X//" >'bulletin.ext' <<'END_OF_FILE'
  768. X
  769. X                     Primary and Secondary Extensions
  770. X                            Used on This BBS
  771. X
  772. X        
  773. XA) Primary Extension
  774. X
  775. X   1) .arc             Use arc to "unarchive" and "uncompress the file"
  776. X   2) .tar             Use tar to "unarchive" the file
  777. X   3) .cpio            Use cpio to "unarchive" the file
  778. X   4) .ar              Use ar to "unarchive" the file
  779. X   5) .shar            Use /bin/sh to separate the file
  780. X   6) .shr             Use /bin/sh to separate the file
  781. X
  782. XB) Secondary Extension
  783. X
  784. X   1) .Z               Use uncompress to "uncompress" the file
  785. X   2) .z               Use unpack to "uncompress" the file
  786. X
  787. XNote: Files that end with a .Z may be either 12 bit or 16 bit compression.
  788. X      Normally, when 16 bit compression was used, it will be noted in the
  789. X      file desciption.
  790. X
  791. X
  792. END_OF_FILE
  793.   if test 803 -ne `wc -c <'bulletin.ext'`; then
  794.     echo shar: \"'bulletin.ext'\" unpacked with wrong size!
  795.   fi
  796.   # end of 'bulletin.ext'
  797. fi
  798. if test -f 'bulletin.inp' -a "${1}" != "-c" ; then 
  799.   echo shar: Will not clobber existing file \"'bulletin.inp'\"
  800. else
  801.   echo shar: Extracting \"'bulletin.inp'\" \(231 characters\)
  802.   sed "s/^X//" >'bulletin.inp' <<'END_OF_FILE'
  803. X
  804. XI am trying to implement additional features into the bbs software; however,
  805. XI am running out of ideas! If you have any ideas, that would enhance the
  806. Xsoftware, please leave me a message so that I can evaluate the request.
  807. XSandy
  808. END_OF_FILE
  809.   if test 231 -ne `wc -c <'bulletin.inp'`; then
  810.     echo shar: \"'bulletin.inp'\" unpacked with wrong size!
  811.   fi
  812.   # end of 'bulletin.inp'
  813. fi
  814. if test -f 'bulletin.path' -a "${1}" != "-c" ; then 
  815.   echo shar: Will not clobber existing file \"'bulletin.path'\"
  816. else
  817.   echo shar: Extracting \"'bulletin.path'\" \(1554 characters\)
  818.   sed "s/^X//" >'bulletin.path' <<'END_OF_FILE'
  819. X      #     # #     #  #####  ######          #     #    #    ######
  820. X      #     # #     # #     # #     #         ##   ##   # #   #     #
  821. X      #     # #     # #       #     #         # # # #  #   #  #     #
  822. X      #     # #     # #       ######          #  #  # #     # ######
  823. X      #     # #     # #       #               #     # ####### #
  824. X      #     # #     # #     # #               #     # #     # #
  825. X       #####   #####   #####  #               #     # #     # #
  826. X                               ####### #######
  827. X                                  #    #     #
  828. X                                  #    #     #
  829. X                                  #    #     #
  830. X                                  #    #     #
  831. X                                  #    #     #
  832. X                                  #    #######
  833. X              #    #       ######  #     #    #     #####  #     #
  834. X             # #   #       #     # #     #   # #   #     # ##   ##
  835. X            #   #  #       #     # #     #  #   #  #       # # # #
  836. X           #     # #       ######  ####### #     # #       #  #  #
  837. X           ####### #       #       #     # ####### #       #     #
  838. X           #     # #       #       #     # #     # #     # #     #
  839. X           #     # ####### #       #     # #     #  #####  #     #
  840. X
  841. X
  842. X
  843. X
  844. X
  845. X            {trwrb|ucla-cs|cepu}\
  846. X                                  !ucla-an\
  847. X       {ihnp4|decvax|sco}!hermix/          \
  848. X                                             !alphacm!{root|sandy}
  849. X                                           /
  850. X                      ucbvax!ucivax!mickey/
  851. X
  852. X
  853. END_OF_FILE
  854.   if test 1554 -ne `wc -c <'bulletin.path'`; then
  855.     echo shar: \"'bulletin.path'\" unpacked with wrong size!
  856.   fi
  857.   # end of 'bulletin.path'
  858. fi
  859. if test -f 'bulletin.red' -a "${1}" != "-c" ; then 
  860.   echo shar: Will not clobber existing file \"'bulletin.red'\"
  861. else
  862.   echo shar: Extracting \"'bulletin.red'\" \(194 characters\)
  863.   sed "s/^X//" >'bulletin.red' <<'END_OF_FILE'
  864. X
  865. XWhile you are in the main menu, you may want to use the R(ead selected files)
  866. Xoption. You will find the latest info-ibmpc, info-unix, and unix-wizards 
  867. Xavailable ( plus other files ).
  868. XSandy
  869. X
  870. END_OF_FILE
  871.   if test 194 -ne `wc -c <'bulletin.red'`; then
  872.     echo shar: \"'bulletin.red'\" unpacked with wrong size!
  873.   fi
  874.   # end of 'bulletin.red'
  875. fi
  876. if test -f 'bulletin.sys' -a "${1}" != "-c" ; then 
  877.   echo shar: Will not clobber existing file \"'bulletin.sys'\"
  878. else
  879.   echo shar: Extracting \"'bulletin.sys'\" \(1044 characters\)
  880.   sed "s/^X//" >'bulletin.sys' <<'END_OF_FILE'
  881. X
  882. X                        This system .......
  883. XHARDWARE
  884. X              IBM-AT running at 10mhz with 4 megabytes of memory
  885. X              80287-8 math coprocessor
  886. X              Two hard disks  ( 120 & 30 megabytes )
  887. X              Two high density floppy disk drives
  888. X              Archive 60 megabyte tape drive
  889. X              EGA monitor and controller
  890. X              Four serial ports
  891. X              Three parallel ports
  892. X              US Robotics 2400 baud modem
  893. X              DC Hayes 1200 baud modem
  894. X
  895. X    LAN to    IBM-AT running at 12mhz with 4 megabytes of memory
  896. X              80287-10 math coprocessor
  897. X              Two hard disks  ( 40 & 20 megabytes )
  898. X              One high density floppy disk drive
  899. X              One low density floppy disk drive
  900. X              Hercules monographics controller with monochrome monitor
  901. X              Two serial ports
  902. X              Three parallel ports
  903. X              DC Hayes 1200 baud modem
  904. X
  905. X
  906. XSOFTWARE
  907. X              10 mhz AT is running SCO Xenix 2.2.0
  908. X              12 mhz AT is running SCO Xenix 2.2.0
  909. X
  910. X
  911. X
  912. END_OF_FILE
  913.   if test 1044 -ne `wc -c <'bulletin.sys'`; then
  914.     echo shar: \"'bulletin.sys'\" unpacked with wrong size!
  915.   fi
  916.   # end of 'bulletin.sys'
  917. fi
  918. if test -f 'bulletin.upl' -a "${1}" != "-c" ; then 
  919.   echo shar: Will not clobber existing file \"'bulletin.upl'\"
  920. else
  921.   echo shar: Extracting \"'bulletin.upl'\" \(1328 characters\)
  922.   sed "s/^X//" >'bulletin.upl' <<'END_OF_FILE'
  923. XI have made my source code for this bbs available to all to use and run. All
  924. XI have asked or will ask is that the users please upload software to this
  925. Xsystem so others may benefit. To date, I am really embarrassed to say that
  926. Xthe uploads to this system are virtually non existent. I get private
  927. Xmessages saying that "it is too expensive to upload". This may be true;
  928. Xhowever, the users that leave such messages will stay on the system and
  929. Xdownload until either their time limit expires or their download limit reaches
  930. Xzero! I guess that it isn't too expensive to take, just give! 
  931. X
  932. XAs you know, I have the capability in this software to restrict downloads. I
  933. Xwould rather not do this; however, if the needed support is not forth
  934. Xcoming, I will do so. 
  935. X
  936. XThere are other Unix/Xenix bbs programs available. Some of the programs are
  937. Xfree, however limited, while others are VERY expensive and really not that
  938. Xpowerful. I am constantly making modifications to the code to make it more
  939. Xversitle, easier to use, and more complete. I give it out without any costs
  940. Xboth in executable form and source form. I was on on system today which runs
  941. Xmy software and the "sysop" had the gull to remove my name from the code
  942. Xand put in his own! I don't appreciate such actions!!! Not only is it illegal
  943. Xbut immoral! 
  944. X
  945. X
  946. XSanford ( Sandy ) Zelkovitz 
  947. END_OF_FILE
  948.   if test 1328 -ne `wc -c <'bulletin.upl'`; then
  949.     echo shar: \"'bulletin.upl'\" unpacked with wrong size!
  950.   fi
  951.   # end of 'bulletin.upl'
  952. fi
  953. if test -f 'bulletin.uucp' -a "${1}" != "-c" ; then 
  954.   echo shar: Will not clobber existing file \"'bulletin.uucp'\"
  955. else
  956.   echo shar: Extracting \"'bulletin.uucp'\" \(1084 characters\)
  957.   sed "s/^X//" >'bulletin.uucp' <<'END_OF_FILE'
  958. X
  959. X
  960. XThere have been MANY questions left for me on how to connect to this system
  961. Xvia uucp to request files. Actually, the procedure is very simple. Just
  962. Xlogin as nuucp with no password. All of the directories used by this bbs
  963. Xhave read privileges; therefore, you can request and receive any file or
  964. Xfiles that are available for downloading. You must remember the full
  965. Xpath names of the files. Any file that is in the bbssoftware directory
  966. Xhas the path name of /user/bbsfiles/bbssoftware/. Likewise, the unix
  967. Xdirectory has the path name of /user/bbsfiles/unix/. This is also true
  968. Xfor each and every file directory on the system. You can get the directory
  969. Xname from the A(rea change) command while in the file section. You will
  970. Xrecognize the name by the first field displayed on each and every line.
  971. XJust add /user/bbsfiles/ to whatever is displayed.
  972. X
  973. XAs an example, if you want the file, ALLbbs.tar.Z, the full pathname is
  974. X/user/bbsfiles/bbssoftware/ALLbbs.tar.Z.
  975. X
  976. XIf you have a file that you would like to send to this system for others
  977. Xto use, please send it to /usr/spool/uucppublic.
  978. X
  979. END_OF_FILE
  980.   if test 1084 -ne `wc -c <'bulletin.uucp'`; then
  981.     echo shar: \"'bulletin.uucp'\" unpacked with wrong size!
  982.   fi
  983.   # end of 'bulletin.uucp'
  984. fi
  985. if test -f 'chatbbs/chat.h' -a "${1}" != "-c" ; then 
  986.   echo shar: Will not clobber existing file \"'chatbbs/chat.h'\"
  987. else
  988.   echo shar: Extracting \"'chatbbs/chat.h'\" \(1056 characters\)
  989.   sed "s/^X//" >'chatbbs/chat.h' <<'END_OF_FILE'
  990. X#include <termio.h>
  991. X#include <errno.h>
  992. X#include <fcntl.h>
  993. X#include <stdio.h>
  994. X#define lowbyte(w) ((w) & 0377)
  995. X#define highbyte(w) lowbyte((w)>>8)
  996. X#define EMPTY '\0'
  997. Xtypedef enum {
  998. X    FALSE, TRUE
  999. X}               BOOLEAN;
  1000. Xstatic char     cbuf = EMPTY;
  1001. Xstatic struct termio tbufsave;
  1002. X
  1003. Xsyserr(msg)
  1004. X    char           *msg;
  1005. X{
  1006. X    extern int      errno, sys_nerr;
  1007. X    extern char    *sys_errlist[];
  1008. X
  1009. X    fprintf(stderr, "ERROR:%s (%d", msg, errno);
  1010. X    if (errno > 0 && errno < sys_nerr)
  1011. X        fprintf(stderr, ";%s)\n", sys_errlist[errno]);
  1012. X    else
  1013. X        fprintf(stderr, ")\n");
  1014. X    exit(1);
  1015. X}
  1016. Xfatal(msg)
  1017. X    char           *msg;
  1018. X{
  1019. X    fprintf(stderr, "ERROR:%s\n", msg);
  1020. X    exit(1);
  1021. X}
  1022. X
  1023. Xsetraw()
  1024. X{
  1025. X    struct termio   tbuf;
  1026. X    if (ioctl(0, TCGETA, &tbuf) == -1)
  1027. X        syserr("ioctl");
  1028. X    tbufsave = tbuf;
  1029. X    tbuf.c_iflag = 0;
  1030. X    tbuf.c_iflag |= IXON;
  1031. X    tbuf.c_iflag |= IXANY;
  1032. X
  1033. X    tbuf.c_oflag &= ~OPOST;
  1034. X    tbuf.c_lflag &= ~(ICANON | ISIG | ECHO);
  1035. X    tbuf.c_cc[4] = 1;
  1036. X    tbuf.c_cc[5] = 0;
  1037. X    if (ioctl(0, TCSETAF, &tbuf) == -1)
  1038. X        syserr("ioctl2");
  1039. X}
  1040. X
  1041. Xrestore()
  1042. X{
  1043. X    if (ioctl(0, TCSETAF, &tbufsave) == -1)
  1044. X        syserr("ioctl3");
  1045. X}
  1046. END_OF_FILE
  1047.   if test 1056 -ne `wc -c <'chatbbs/chat.h'`; then
  1048.     echo shar: \"'chatbbs/chat.h'\" unpacked with wrong size!
  1049.   fi
  1050.   # end of 'chatbbs/chat.h'
  1051. fi
  1052. if test -f 'dlmsg.bbs' -a "${1}" != "-c" ; then 
  1053.   echo shar: Will not clobber existing file \"'dlmsg.bbs'\"
  1054. else
  1055.   echo shar: Extracting \"'dlmsg.bbs'\" \(221 characters\)
  1056.   sed "s/^X//" >'dlmsg.bbs' <<'END_OF_FILE'
  1057. X
  1058. XPlease remember that the file or files that you about to download was/were
  1059. Xput on this system by someone else at their expense. If you have a file or
  1060. Xfiles that you would like to upload, others can also benefit.
  1061. XSandy
  1062. END_OF_FILE
  1063.   if test 221 -ne `wc -c <'dlmsg.bbs'`; then
  1064.     echo shar: \"'dlmsg.bbs'\" unpacked with wrong size!
  1065.   fi
  1066.   # end of 'dlmsg.bbs'
  1067. fi
  1068. if test -f 'etc_profile' -a "${1}" != "-c" ; then 
  1069.   echo shar: Will not clobber existing file \"'etc_profile'\"
  1070. else
  1071.   echo shar: Extracting \"'etc_profile'\" \(250 characters\)
  1072.   sed "s/^X//" >'etc_profile' <<'END_OF_FILE'
  1073. X
  1074. XSHELL=/bin/sh
  1075. Xexport SHELL
  1076. Xpspool=/usr/spool/uucppublic
  1077. Xmspool=/usr/spool/mail
  1078. Xulib=/usr/lib/uucp
  1079. Xuspool=/usr/spool/uucp
  1080. Xbbs=/usr/sandy/bbs
  1081. Xsl=/usr/sandy/lib
  1082. Xsb=/usr/sandy/bin
  1083. Xa=`who am i | cut -c1-3`
  1084. Xif test "$a" != bbs
  1085. Xthen
  1086. X    cat /etc/motd.motd
  1087. Xfi
  1088. END_OF_FILE
  1089.   if test 250 -ne `wc -c <'etc_profile'`; then
  1090.     echo shar: \"'etc_profile'\" unpacked with wrong size!
  1091.   fi
  1092.   # end of 'etc_profile'
  1093. fi
  1094. if test -f 'features.bbs' -a "${1}" != "-c" ; then 
  1095.   echo shar: Will not clobber existing file \"'features.bbs'\"
  1096. else
  1097.   echo shar: Extracting \"'features.bbs'\" \(461 characters\)
  1098.   sed "s/^X//" >'features.bbs' <<'END_OF_FILE'
  1099. XProgram........................................... Description.......... Privs
  1100. X/usr/bin/finger                                    Finger                5 
  1101. X/bin/df -t                                         Diskspace             5
  1102. X/bin/who                                           On system             5 
  1103. X/usr/bin/w                                         Who and Where         5
  1104. X/bin/vi /usr/sandy/bbs/callers.bbs1A               Edit callers file     32767*
  1105. END_OF_FILE
  1106.   if test 461 -ne `wc -c <'features.bbs'`; then
  1107.     echo shar: \"'features.bbs'\" unpacked with wrong size!
  1108.   fi
  1109.   # end of 'features.bbs'
  1110. fi
  1111. if test -f 'help.bbs' -a "${1}" != "-c" ; then 
  1112.   echo shar: Will not clobber existing file \"'help.bbs'\"
  1113. else
  1114.   echo shar: Extracting \"'help.bbs'\" \(1222 characters\)
  1115.   sed "s/^X//" >'help.bbs' <<'END_OF_FILE'
  1116. X                      MAIN MENU HELP SECTION
  1117. X
  1118. XB    Go to the bulletin section
  1119. XG    Good-bye
  1120. XN    Read the NEW USER INFO
  1121. XW    Read the welcome message
  1122. XX    eXpert mode ( toggle )
  1123. XF    Go to the Files Section
  1124. XM    Go to the Message Section
  1125. XH    Read the HUMOR file
  1126. XV    Print out the version and date of XBBS
  1127. XT    Toggle full page stop/continue mode (useful for file capture)
  1128. XD    Daily sunrise/sunset information (with present time and date)
  1129. XU    Goto Unix/Xenix --- Extremely High Privilege Required
  1130. XP    Change your existing password
  1131. XC    Request a CHAT with the SYSOP
  1132. XQ    Answer my questionnaire
  1133. XA    Additional user defined programs and shell scripts
  1134. XR    Read sysop selected files
  1135. XZ    Zip mail --- Read all messages in all message bases that are addressed
  1136. X     to you. You will be able to delete them after reading them. Or, you can
  1137. X     Read all new public messages in all the message bases. 
  1138. X     privilege level is high enough, respond to the individual messages.
  1139. XO    Online conference section (CB section)
  1140. XE    Check to see who is presently in conference
  1141. XL    Check to see who is logged onto the bbs
  1142. XS    USENET ACCESS --set terminal type, postnews, & readnews
  1143. XI    Enter SIG <Special Interest Group> Section
  1144. X
  1145. X
  1146. END_OF_FILE
  1147.   if test 1222 -ne `wc -c <'help.bbs'`; then
  1148.     echo shar: \"'help.bbs'\" unpacked with wrong size!
  1149.   fi
  1150.   # end of 'help.bbs'
  1151. fi
  1152. if test -f 'helpfile.bbs' -a "${1}" != "-c" ; then 
  1153.   echo shar: Will not clobber existing file \"'helpfile.bbs'\"
  1154. else
  1155.   echo shar: Extracting \"'helpfile.bbs'\" \(751 characters\)
  1156.   sed "s/^X//" >'helpfile.bbs' <<'END_OF_FILE'
  1157. XA  Area change - Note you can insert the area number after the A/a and it
  1158. X   will go directly to that area.
  1159. XF  List the files in the present file area
  1160. XU  Upload a file ---- From you to me
  1161. XD  Download a file --- From me to you
  1162. XM  Return to the MAIN menu
  1163. XX  Expert mode (toggle)
  1164. XT  Toggle page control
  1165. XG  Goodbye - Disconnect
  1166. XC  List the contents of a .tar, .tar.Z, .zip  or .arc file
  1167. XR  Raw list of files ( Unix/Xenix format )
  1168. XN  List new files since last day you logged in
  1169. XZ  ZIP through all allowable directories with options L F N R
  1170. XL  Locate a file or files which has a file name containing the input substring
  1171. X   Do NOT use an asterisk as part of the substring!
  1172. XS  Summary of the present directory statistics
  1173. X?  help ( display this information )
  1174. X
  1175. END_OF_FILE
  1176.   if test 751 -ne `wc -c <'helpfile.bbs'`; then
  1177.     echo shar: \"'helpfile.bbs'\" unpacked with wrong size!
  1178.   fi
  1179.   # end of 'helpfile.bbs'
  1180. fi
  1181. if test -f 'helpmsg.bbs' -a "${1}" != "-c" ; then 
  1182.   echo shar: Will not clobber existing file \"'helpmsg.bbs'\"
  1183. else
  1184.   echo shar: Extracting \"'helpmsg.bbs'\" \(701 characters\)
  1185.   sed "s/^X//" >'helpmsg.bbs' <<'END_OF_FILE'
  1186. X
  1187. X
  1188. X                       MESSAGE MENU HELP SECTION
  1189. X
  1190. X
  1191. XA    Change message AREA
  1192. XK    Kill a message
  1193. XQ    Quick scan
  1194. XS    Scan the messages
  1195. XR    Read the messages
  1196. XC    Check your mail status ( to you, from you, and since last call )
  1197. XY    Your messages ( messages addressed to you ) - read and optional kill
  1198. XE    Enter message to another user
  1199. XN    Enter message to another user and block, if possible, each line.
  1200. XM    Return to the MAIN MENU
  1201. XX    Toggle expert/novice mode
  1202. XT    Toggle page control
  1203. XB    You can select a series of messages to read in a particular order.
  1204. X     Arguments are required after the B argument.
  1205. X     example: b 1 2 3 9 55 3
  1206. X     or:      B;1;2;3;9;55;3
  1207. XG    Good-bye
  1208. X           
  1209. X
  1210. END_OF_FILE
  1211.   if test 701 -ne `wc -c <'helpmsg.bbs'`; then
  1212.     echo shar: \"'helpmsg.bbs'\" unpacked with wrong size!
  1213.   fi
  1214.   # end of 'helpmsg.bbs'
  1215. fi
  1216. if test -f 'helpsig.bbs' -a "${1}" != "-c" ; then 
  1217.   echo shar: Will not clobber existing file \"'helpsig.bbs'\"
  1218. else
  1219.   echo shar: Extracting \"'helpsig.bbs'\" \(357 characters\)
  1220.   sed "s/^X//" >'helpsig.bbs' <<'END_OF_FILE'
  1221. X
  1222. X                     SIG MAIN MENU HELP INFORMATION
  1223. X
  1224. XM       Go to the SIG message section
  1225. XF       Go to the SIG file section
  1226. XA       Additional user defined programs and/or shell scripts
  1227. XL       Leave this SIG
  1228. XX       Novice/Expert mode toggle
  1229. XT       Toggle page control  < stop/continuous mode >
  1230. XG       Leave XBBS --- Goodbye
  1231. X?       Output this file
  1232. X
  1233. END_OF_FILE
  1234.   if test 357 -ne `wc -c <'helpsig.bbs'`; then
  1235.     echo shar: \"'helpsig.bbs'\" unpacked with wrong size!
  1236.   fi
  1237.   # end of 'helpsig.bbs'
  1238. fi
  1239. if test -f 'listfile.bbs' -a "${1}" != "-c" ; then 
  1240.   echo shar: Will not clobber existing file \"'listfile.bbs'\"
  1241. else
  1242.   echo shar: Extracting \"'listfile.bbs'\" \(304 characters\)
  1243.   sed "s/^X//" >'listfile.bbs' <<'END_OF_FILE'
  1244. XFile to List...................................... Description.......... Privs
  1245. X/user/info_files/info-unix                         Latest info-unix      2
  1246. X/user/info_files/unix-wizards                      Latest unix-wizards   2
  1247. X/user/bbs.lst                                      IBM National BBS List 2
  1248. END_OF_FILE
  1249.   if test 304 -ne `wc -c <'listfile.bbs'`; then
  1250.     echo shar: \"'listfile.bbs'\" unpacked with wrong size!
  1251.   fi
  1252.   # end of 'listfile.bbs'
  1253. fi
  1254. if test -f 'listuser/listuser.c' -a "${1}" != "-c" ; then 
  1255.   echo shar: Will not clobber existing file \"'listuser/listuser.c'\"
  1256. else
  1257.   echo shar: Extracting \"'listuser/listuser.c'\" \(1142 characters\)
  1258.   sed "s/^X//" >'listuser/listuser.c' <<'END_OF_FILE'
  1259. X#include <stdio.h>
  1260. X#include <string.h>
  1261. Xmain()
  1262. X    {
  1263. X    FILE *inbuf;
  1264. X    int code;
  1265. X    int count;
  1266. X    char infile[99], outfile[99];
  1267. X    char u_fname[99], u_lname[99], u_password[99], u_time1[99];
  1268. X    char u_date1[99], u_time2[99], u_date2[99], u_city[99];
  1269. X    char l_m_base[5], l_f_base[5], xprt[3], toggle[3];
  1270. X    printf("\n\r");
  1271. X    strcpy(infile,"/user/bbsfiles/users.bbs");
  1272. X    if((inbuf = fopen(infile, "r" )) == NULL)
  1273. X        {
  1274. X        printf("\n\rError opening users file.\n\r");
  1275. X        exit(1);
  1276. X        }
  1277. X    while(1)
  1278. X        {
  1279. X        code = fscanf(inbuf,"%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~\n",
  1280. X            u_fname, u_lname, u_password, u_time1, u_date1,
  1281. X            u_time2, u_date2, u_city, l_m_base, l_f_base, xprt, toggle);
  1282. X        if(code < 12 ) break;
  1283. X        term_space(u_fname);
  1284. X        term_space(u_lname);
  1285. X        term_space(u_city);
  1286. X        term_space(u_time2);
  1287. X        term_space(u_date2);
  1288. X        printf("%s %s from %s was last on at %s on %s\n",u_fname,u_lname,u_city,u_time2,u_date2);
  1289. X
  1290. X        }
  1291. X    fclose(inbuf);
  1292. X    }
  1293. Xterm_space(adr) char *adr;
  1294. X    {
  1295. X    int l;
  1296. X    char *str_ptr;
  1297. X    str_ptr = adr;
  1298. X    l = strlen(adr);
  1299. X    str_ptr = str_ptr + l - 1;
  1300. X    while (str_ptr >= adr)
  1301. X        {
  1302. X        if( *str_ptr != ' ')return;
  1303. X        *str_ptr-- = '\0';
  1304. X        }
  1305. X    }
  1306. END_OF_FILE
  1307.   if test 1142 -ne `wc -c <'listuser/listuser.c'`; then
  1308.     echo shar: \"'listuser/listuser.c'\" unpacked with wrong size!
  1309.   fi
  1310.   # end of 'listuser/listuser.c'
  1311. fi
  1312. if test -f 'listuser/listuser.read.' -a "${1}" != "-c" ; then 
  1313.   echo shar: Will not clobber existing file \"'listuser/listuser.read.'\"
  1314. else
  1315.   echo shar: Extracting \"'listuser/listuser.read.'\" \(449 characters\)
  1316.   sed "s/^X//" >'listuser/listuser.read.' <<'END_OF_FILE'
  1317. XThere are two different versions of program which will list the users
  1318. Xon your bbs: listuser and listusers.
  1319. XThe two programs are basically the same except for how they get the file
  1320. Xname. Listuser expects the file to be called users.bbs and also that it
  1321. Xresides in the same directory. This is the version that I use as an
  1322. XA(dditional features) program. Listusers prompts you for the full pathname
  1323. Xof the file.
  1324. X
  1325. XSandy
  1326. X                  714-828-0288
  1327. X
  1328. END_OF_FILE
  1329.   if test 449 -ne `wc -c <'listuser/listuser.read.'`; then
  1330.     echo shar: \"'listuser/listuser.read.'\" unpacked with wrong size!
  1331.   fi
  1332.   # end of 'listuser/listuser.read.'
  1333. fi
  1334. if test -f 'listuser/listusers.c' -a "${1}" != "-c" ; then 
  1335.   echo shar: Will not clobber existing file \"'listuser/listusers.c'\"
  1336. else
  1337.   echo shar: Extracting \"'listuser/listusers.c'\" \(1176 characters\)
  1338.   sed "s/^X//" >'listuser/listusers.c' <<'END_OF_FILE'
  1339. X#include <stdio.h>
  1340. X#include <string.h>
  1341. Xmain()
  1342. X    {
  1343. X    FILE *inbuf;
  1344. X    int code;
  1345. X    int count;
  1346. X    char infile[99], outfile[99];
  1347. X    char u_fname[99], u_lname[99], u_password[99], u_time1[99];
  1348. X    char u_date1[99], u_time2[99], u_date2[99], u_city[99];
  1349. X    char l_m_base[5], l_f_base[5], xprt[3], toggle[3];
  1350. X    printf("\nInput the full path name of the user file: ");
  1351. X    scanf("%s", infile);
  1352. X    printf("\n");
  1353. X    if((inbuf = fopen(infile, "r" )) == NULL)
  1354. X        {
  1355. X        printf("\n\rError opening users file.\n\r");
  1356. X        exit(1);
  1357. X        }
  1358. X    while(1)
  1359. X        {
  1360. X        code = fscanf(inbuf,"%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~%[^~]~\n",
  1361. X            u_fname, u_lname, u_password, u_time1, u_date1,
  1362. X            u_time2, u_date2, u_city, l_m_base, l_f_base, xprt, toggle);
  1363. X        if(code < 12 ) break;
  1364. X        term_space(u_fname);
  1365. X        term_space(u_lname);
  1366. X        term_space(u_city);
  1367. X        term_space(u_time2);
  1368. X        term_space(u_date2);
  1369. X        printf("%s %s from %s was last on at %s on %s\n",u_fname,u_lname,u_city,u_time2,u_date2);
  1370. X
  1371. X        }
  1372. X    fclose(inbuf);
  1373. X    }
  1374. Xterm_space(adr) char *adr;
  1375. X    {
  1376. X    int l;
  1377. X    char *str_ptr;
  1378. X    str_ptr = adr;
  1379. X    l = strlen(adr);
  1380. X    str_ptr = str_ptr + l - 1;
  1381. X    while (str_ptr >= adr)
  1382. X        {
  1383. X        if( *str_ptr != ' ')return;
  1384. X        *str_ptr-- = '\0';
  1385. X        }
  1386. X    }
  1387. END_OF_FILE
  1388.   if test 1176 -ne `wc -c <'listuser/listusers.c'`; then
  1389.     echo shar: \"'listuser/listusers.c'\" unpacked with wrong size!
  1390.   fi
  1391.   # end of 'listuser/listusers.c'
  1392. fi
  1393. if test -f 'msgareas.bbs' -a "${1}" != "-c" ; then 
  1394.   echo shar: Will not clobber existing file \"'msgareas.bbs'\"
  1395. else
  1396.   echo shar: Extracting \"'msgareas.bbs'\" \(344 characters\)
  1397.   sed "s/^X//" >'msgareas.bbs' <<'END_OF_FILE'
  1398. XMessage  Path Description of Message Area               Privs    
  1399. Xgeneral       General Message Area                      1             
  1400. Xhelpwanted    Posting of Positions                      1              
  1401. Xforsale       Computer Equipment for Sale               1         
  1402. Xspecial       Sysop Level Messages                      32767*     
  1403. END_OF_FILE
  1404.   if test 344 -ne `wc -c <'msgareas.bbs'`; then
  1405.     echo shar: \"'msgareas.bbs'\" unpacked with wrong size!
  1406.   fi
  1407.   # end of 'msgareas.bbs'
  1408. fi
  1409. if test -f 'msgpack/packmisc.c' -a "${1}" != "-c" ; then 
  1410.   echo shar: Will not clobber existing file \"'msgpack/packmisc.c'\"
  1411. else
  1412.   echo shar: Extracting \"'msgpack/packmisc.c'\" \(1326 characters\)
  1413.   sed "s/^X//" >'msgpack/packmisc.c' <<'END_OF_FILE'
  1414. X/*
  1415. X * bbscmisc.c 
  1416. X *
  1417. X * Support routines used by BBSc.c. Mike Kelly 
  1418. X *
  1419. X * 06/12/83 v1.0    written 07/07/83 v1.0    updated 
  1420. X */
  1421. X
  1422. X#include "packdef.h"
  1423. X#include <sys/types.h>
  1424. X#include <sys/stat.h>
  1425. X
  1426. X#define LASTDATE  " 07/07/83 "
  1427. X
  1428. X#define PGMNAME "BBSCMISC "
  1429. X#define VERSION " 1.0 "
  1430. X
  1431. X
  1432. Xstrfill(buf, fillchar, length)    /* fill a string with fillchar */
  1433. X    char           *buf;    /* for length -1 */
  1434. X    int             fillchar, length;
  1435. X{
  1436. X    while (--length) {    /* really is length -1 */
  1437. X        *buf++ = fillchar;
  1438. X    }
  1439. X    *buf++ = '\0';        /* need room for this */
  1440. X}
  1441. X
  1442. Xsubstr(from, to, start, length)    /* moves chars from "from" to "to" */
  1443. X    char           *from, *to;    /* starting at "start" for */
  1444. X/* "length" number of chars */
  1445. X    int             start, length;    /* for beginning of string use 1, not
  1446. X                     * 0 */
  1447. X{
  1448. X    int             cnt;
  1449. X
  1450. X    cnt = 0;
  1451. X
  1452. X    while (--start) {    /* adjust sending field pointer */
  1453. X        from++;
  1454. X    }
  1455. X
  1456. X    while ((cnt < length) && (*to++ = *from++)) {    /* do the moving */
  1457. X        cnt++;
  1458. X    }
  1459. X
  1460. X    *to = '\0';
  1461. X
  1462. X}
  1463. X
  1464. Xitoa(str, n)            /* taken from float.c */
  1465. X    char           *str;
  1466. X{
  1467. X    sprintf(str, "%d", n);
  1468. X}
  1469. X/* end of function         */
  1470. X
  1471. Xseek(fildes, posit, dummy) int 
  1472. X    fildes, posit, dummy;
  1473. X{
  1474. X    long            pos;
  1475. X    pos = posit * 128L;
  1476. X    /* return(lseek(fildes,posit << 7,0)) ;    */
  1477. X    return (lseek(fildes, pos, 0));
  1478. X}
  1479. X/* end of function         */
  1480. X
  1481. X/* end of program       */
  1482. END_OF_FILE
  1483.   if test 1326 -ne `wc -c <'msgpack/packmisc.c'`; then
  1484.     echo shar: \"'msgpack/packmisc.c'\" unpacked with wrong size!
  1485.   fi
  1486.   chmod +x 'msgpack/packmisc.c'
  1487.   # end of 'msgpack/packmisc.c'
  1488. fi
  1489. if test -f 'question.qst' -a "${1}" != "-c" ; then 
  1490.   echo shar: Will not clobber existing file \"'question.qst'\"
  1491. else
  1492.   echo shar: Extracting \"'question.qst'\" \(435 characters\)
  1493.   sed "s/^X//" >'question.qst' <<'END_OF_FILE'
  1494. X@XBBS New User Questionnaire
  1495. XNDo you wish to continue (y/n)
  1496. X{
  1497. X/
  1498. X}
  1499. X^Input your full name
  1500. X^Input your home (voice) telephone number 
  1501. X^Input your data telephone number
  1502. X!Input your work telephone number
  1503. X&Input your full address ( 3 lines available )
  1504. X*
  1505. X$
  1506. X$
  1507. X^Input your profession
  1508. X^Where did you hear about this system
  1509. X!What is your uucp address ( from a major node )
  1510. X@     
  1511. X@Thank you for taking the time to answer my questionnaire.
  1512. X@Sandy
  1513. END_OF_FILE
  1514.   if test 435 -ne `wc -c <'question.qst'`; then
  1515.     echo shar: \"'question.qst'\" unpacked with wrong size!
  1516.   fi
  1517.   # end of 'question.qst'
  1518. fi
  1519. if test -f 'sealink/Makefile.286' -a "${1}" != "-c" ; then 
  1520.   echo shar: Will not clobber existing file \"'sealink/Makefile.286'\"
  1521. else
  1522.   echo shar: Extracting \"'sealink/Makefile.286'\" \(575 characters\)
  1523.   sed "s/^X//" >'sealink/Makefile.286' <<'END_OF_FILE'
  1524. X# This makefile is specifically for XENIX; you can delete most of the
  1525. X# options when using non-segmented architectures.  Pay attention to
  1526. X# libraries needed, e.g. to use nap() in XENIX you must use the
  1527. X# -lx library.
  1528. X#
  1529. X# This program assumes the existence of getopt() in the standard
  1530. X# library!
  1531. X
  1532. XCFLAGS=-Ms -i -Ox -K
  1533. XLFLAGS=-F 0400 -s
  1534. XLIBS=
  1535. X
  1536. Xsealink: sealink.c
  1537. X    cc $(CFLAGS) $(LFLAGS) -o sealink $(LIBS) sealink.c
  1538. X    rm -f sealink.o
  1539. X
  1540. Xtar: sealink.c
  1541. X    -chmod o-rw sealink.c
  1542. X    -chmod ug+rw sealink.c
  1543. X    -chown bin sealink.c
  1544. X    tar cvnf sealink.tar Readme _HISTORY sealink.mk sealink.c
  1545. END_OF_FILE
  1546.   if test 575 -ne `wc -c <'sealink/Makefile.286'`; then
  1547.     echo shar: \"'sealink/Makefile.286'\" unpacked with wrong size!
  1548.   fi
  1549.   # end of 'sealink/Makefile.286'
  1550. fi
  1551. if test -f 'sealink/Makefile.386' -a "${1}" != "-c" ; then 
  1552.   echo shar: Will not clobber existing file \"'sealink/Makefile.386'\"
  1553. else
  1554.   echo shar: Extracting \"'sealink/Makefile.386'\" \(564 characters\)
  1555.   sed "s/^X//" >'sealink/Makefile.386' <<'END_OF_FILE'
  1556. X# This makefile is specifically for XENIX386; you can delete most of the
  1557. X# options when using non-segmented architectures.  Pay attention to
  1558. X# libraries needed, e.g. to use nap() in XENIX you must use the
  1559. X# -lx library.
  1560. X#
  1561. X# This program assumes the existence of getopt() in the standard
  1562. X# library!
  1563. X
  1564. XCFLAGS=-Ox 
  1565. XLFLAGS=-s
  1566. XLIBS=-lx
  1567. X
  1568. Xsealink: sealink.c
  1569. X    cc $(CFLAGS) $(LFLAGS) -o sealink $(LIBS) sealink.c
  1570. X    rm -f sealink.o
  1571. X
  1572. Xtar: sealink.c
  1573. X    -chmod o-rw sealink.c
  1574. X    -chmod ug+rw sealink.c
  1575. X    -chown bin sealink.c
  1576. X    tar cvnf sealink.tar Readme _HISTORY sealink.mk sealink.c
  1577. END_OF_FILE
  1578.   if test 564 -ne `wc -c <'sealink/Makefile.386'`; then
  1579.     echo shar: \"'sealink/Makefile.386'\" unpacked with wrong size!
  1580.   fi
  1581.   # end of 'sealink/Makefile.386'
  1582. fi
  1583. if test -f 'sealink/Readme' -a "${1}" != "-c" ; then 
  1584.   echo shar: Will not clobber existing file \"'sealink/Readme'\"
  1585. else
  1586.   echo shar: Extracting \"'sealink/Readme'\" \(1300 characters\)
  1587.   sed "s/^X//" >'sealink/Readme' <<'END_OF_FILE'
  1588. XSEAlink/SYSV and SEAlink/BSD support full pathnames locally (but not in
  1589. Xthe file name transmitted to the remote SEAlink program).
  1590. X
  1591. XThe only known bug at this point is really a flaw in the original design
  1592. Xof the protocol; rather than using time measured in seconds starting in
  1593. X1970, the design called for time measured in seconds starting in 1980.
  1594. XSince then the protocol definition has been changed to reflect the
  1595. X"real" standard.  At this point I haven't worked out a method to
  1596. Xdetermine which time is used in a particular SEAlink implementation.
  1597. X
  1598. XBe sure to check the #defines in sealink.c for compiling on different
  1599. Xsystems.  Note that with Ultrix v1.2, you must use BSD/V7 functions, NOT
  1600. Xthe System V emulation -- it simply will not work correctly.  Also be
  1601. Xaware that getopt.o is expected to be in the standard library; if it
  1602. Xisn't there are PD versions available from many sources (including
  1603. Xmy system, clmqt, see address below).
  1604. X
  1605. XThe makefile supplied (sealink.mk) is specific to XENIX for 80286-based
  1606. Xmachines and will have to be modified slightly for other systems.  In
  1607. Xmost cases a simple "cc -O sealink.c -o sealink" will do what you need
  1608. Xafter you have checked the compile-time switches in the code.
  1609. X
  1610. XNOTE:  this program will probably not work with cu!
  1611. X
  1612. XScott Reynolds
  1613. Xuucp:  clmqt!scott
  1614. END_OF_FILE
  1615.   if test 1300 -ne `wc -c <'sealink/Readme'`; then
  1616.     echo shar: \"'sealink/Readme'\" unpacked with wrong size!
  1617.   fi
  1618.   # end of 'sealink/Readme'
  1619. fi
  1620. if test -f 'sigs.bbs' -a "${1}" != "-c" ; then 
  1621.   echo shar: Will not clobber existing file \"'sigs.bbs'\"
  1622. else
  1623.   echo shar: Extracting \"'sigs.bbs'\" \(234 characters\)
  1624.   sed "s/^X//" >'sigs.bbs' <<'END_OF_FILE'
  1625. XProgram........................................... Description.......... Privs
  1626. Xxbbssysops                                         SIG for XBBS sysops   5    *
  1627. Xxbbsusers                                          SIG for XBBS users    5
  1628. END_OF_FILE
  1629.   if test 234 -ne `wc -c <'sigs.bbs'`; then
  1630.     echo shar: \"'sigs.bbs'\" unpacked with wrong size!
  1631.   fi
  1632.   # end of 'sigs.bbs'
  1633. fi
  1634. if test -f 'system.bbs' -a "${1}" != "-c" ; then 
  1635.   echo shar: Will not clobber existing file \"'system.bbs'\"
  1636. else
  1637.   echo shar: Extracting \"'system.bbs'\" \(1150 characters\)
  1638.   sed "s/^X//" >'system.bbs' <<'END_OF_FILE'
  1639. X
  1640. X
  1641. X
  1642. X        --------------------------------------------------------- 
  1643. X       |                                                         |
  1644. X       |       x      x    bbbbbb      bbbbbb       ssssss       |
  1645. X       |        x    x     b      b    b      b    s             |
  1646. X       |         x  x      b      b    b      b    s             |
  1647. X       |          xx       bbbbbb      bbbbbb        sss         |
  1648. X       |         x  x      b      b    b      b           s      |
  1649. X       |        x    x     b      b    b      b           s      |
  1650. X       |       x      x    bbbbbb      bbbbbb      sssssss       |
  1651. X       |                                                         |
  1652. X       |                                                         |
  1653. X       |        T H A N K    Y O U   F O R   C A L L I N G       |
  1654. X       |                  Please call back soon                  |
  1655. X       |                                                         |
  1656. X       |                          "C" ya                         |
  1657. X       |                                                         |
  1658. X        --------------------------------------------------------- 
  1659. X(click)
  1660. END_OF_FILE
  1661.   if test 1150 -ne `wc -c <'system.bbs'`; then
  1662.     echo shar: \"'system.bbs'\" unpacked with wrong size!
  1663.   fi
  1664.   # end of 'system.bbs'
  1665. fi
  1666. if test -f 'today/moontx.h' -a "${1}" != "-c" ; then 
  1667.   echo shar: Will not clobber existing file \"'today/moontx.h'\"
  1668. else
  1669.   echo shar: Extracting \"'today/moontx.h'\" \(529 characters\)
  1670.   sed "s/^X//" >'today/moontx.h' <<'END_OF_FILE'
  1671. X# include    <stdio.h>
  1672. X# include    <time.h>
  1673. X# include    <math.h>
  1674. X
  1675. X#define EPOCH   1985
  1676. X#define EPSILONg 279.611371     /* solar ecliptic long at EPOCH */
  1677. X#define RHOg     282.680403     /* solar ecliptic long of perigee at EPOCH */
  1678. X#define e          0.01671542   /* solar orbit eccentricity */
  1679. X#define lzero     18.251907     /* lunar mean long at EPOCH */
  1680. X#define Pzero    192.917585     /* lunar mean long of perigee at EPOCH */
  1681. X#define Nzero     55.204723     /* lunar mean long of node at EPOCH */
  1682. X
  1683. X# define    PI         3.141592654
  1684. END_OF_FILE
  1685.   if test 529 -ne `wc -c <'today/moontx.h'`; then
  1686.     echo shar: \"'today/moontx.h'\" unpacked with wrong size!
  1687.   fi
  1688.   # end of 'today/moontx.h'
  1689. fi
  1690. if test -f 'today/potm.c' -a "${1}" != "-c" ; then 
  1691.   echo shar: Will not clobber existing file \"'today/potm.c'\"
  1692. else
  1693.   echo shar: Extracting \"'today/potm.c'\" \(273 characters\)
  1694.   sed "s/^X//" >'today/potm.c' <<'END_OF_FILE'
  1695. X/*
  1696. X**    <potm.c> --    Print out the phase of the moon ...
  1697. X**
  1698. X**    programmer:    John Dilley    (mordred:jad)
  1699. X**
  1700. X**    creation date:    Sat Feb  9 14:27
  1701. X**
  1702. X**
  1703. X**    modification history
  1704. X**
  1705. X*/
  1706. X
  1707. Xstatic    char    potm[64];
  1708. X
  1709. Xmain()
  1710. X{
  1711. X    moontxt(potm);
  1712. X    printf("Phase-of-the-Moon:%s\n", potm+11);
  1713. X}
  1714. END_OF_FILE
  1715.   if test 273 -ne `wc -c <'today/potm.c'`; then
  1716.     echo shar: \"'today/potm.c'\" unpacked with wrong size!
  1717.   fi
  1718.   # end of 'today/potm.c'
  1719. fi
  1720. if test -f 'unixmsg.bbs' -a "${1}" != "-c" ; then 
  1721.   echo shar: Will not clobber existing file \"'unixmsg.bbs'\"
  1722. else
  1723.   echo shar: Extracting \"'unixmsg.bbs'\" \(1296 characters\)
  1724.   sed "s/^X//" >'unixmsg.bbs' <<'END_OF_FILE'
  1725. X
  1726. XSince your privilege level is high enough, you will be entering in to Xenix.
  1727. XThere are a few things that I must relay to you:
  1728. X   
  1729. X         1) The system will be switching from 8N1 to 7E1.
  1730. X         2) To return to the BBS, you must type a control-d ( ^d ).
  1731. X         3) Once you are in Xenix and you wish to switch to Unix, which is
  1732. X            running on another IBM-AT, you can type /etc/callit and the local
  1733. X            network will connect you. Please remember that you will have to
  1734. X            type a control-d to exit Unix and, at the login prompt on
  1735. X            the Unix system, type an enter or return followed by a ~.
  1736. X            ( tilde period ) to return to Xenix. The next control-d will then
  1737. X            return you to the BBS.
  1738. X         4) Once you return back to the BBS, the system will switch back to
  1739. X            8N1.
  1740. X         5) If you do switch to the Unix system, login in as guest with a
  1741. X            password of guest. The Unix system is NOT accessable via the
  1742. X            modem and can only be connected through the local network.
  1743. X
  1744. XPlease note that if you attempted to switch to Unix and you DID NOT get a
  1745. Xlogin prompt, that means that the Unix system is OFFLINE. If this is the case,
  1746. Xtype a ~. ( tilde period ) followed by an enter or return to return back to
  1747. XXenix.
  1748. X
  1749. XSandy
  1750. X
  1751. X
  1752. END_OF_FILE
  1753.   if test 1296 -ne `wc -c <'unixmsg.bbs'`; then
  1754.     echo shar: \"'unixmsg.bbs'\" unpacked with wrong size!
  1755.   fi
  1756.   # end of 'unixmsg.bbs'
  1757. fi
  1758. echo shar: End of archive 10 \(of 11\).
  1759. cp /dev/null ark10isdone
  1760. MISSING=""
  1761. for I in 1 2 3 4 5 6 7 8 9 10 11 ; do
  1762.     if test ! -f ark${I}isdone ; then
  1763.     MISSING="${MISSING} ${I}"
  1764.     fi
  1765. done
  1766. if test "${MISSING}" = "" ; then
  1767.     echo You have unpacked all 11 archives.
  1768.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1769. else
  1770.     echo You still must unpack the following archives:
  1771.     echo "        " ${MISSING}
  1772. fi
  1773. exit 0
  1774. exit 0 # Just in case...
  1775.