home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume13 / bbs_bk / part01 next >
Text File  |  1990-05-25  |  31KB  |  1,143 lines

  1. Newsgroups: comp.sources.misc
  2. organization: Dog Ear'd Systems Co. A division of Brand-X
  3. keywords: BBS, generic, simple, free.
  4. subject: v13i001: Simple Bourne Shell BBS
  5. From: root@dogear.UUCP (dogear!bobk )
  6. Sender: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)
  7.  
  8. Posting-number: Volume 13, Issue 1
  9. Submitted-by: root@dogear.UUCP (dogear!bobk )
  10. Archive-name: bbs_bk/part01
  11.  
  12. This is a simple BBS system written in Bourne shell script. I've used it in
  13. the past with success. I emptied all of the system specific (user) files,
  14. so it should be pretty generic. I also took out most of the bells and whistles
  15. that made it specific to my system. Because it's written in shell script, it
  16. should be a pretty easy task to adapt it to virtually anything in the *NIX
  17. world. If you give it a try, you should make sure that the utilities it uses
  18. are located in the same directories as the ones called out in the script. If
  19. not, just change them.
  20.  
  21. The system allows file xfer, messages (internal), a link to rn and postnews,
  22. a bulletin system, and a couple of other (possibly) useful functions. Things
  23. like user time-allotments are removed, not everyone has the same idlekill or
  24. 'at' commands. However, it should be no problem to quickly make the basic
  25. system functional.
  26.  
  27. A system user called 'bbs' should be added to the /etc/passwd file, and users
  28. log in that way.
  29.  
  30. mine looks like 
  31.  
  32. bbs::107:100:BBS Login Account:/bbs:/bin/sh -c /bbs/bbs
  33.  
  34. This will dump users who try to CTRL-C to the system.
  35.  
  36.  
  37.  
  38. #
  39. # This is a Shell Archive.
  40. # Remove everything above and including the cut line.
  41. # Then run the rest of the file through #! /bin/sh.
  42. # -----cut here-----cut here-----cut here-----cut here-----
  43. #! /bin/sh
  44. # Execute the file with #! /bin/sh (not csh) to create the files:
  45. #    0
  46. #    B.1
  47. #    B.2
  48. #    LOGGEDonce
  49. #    News
  50. #    USERFILE
  51. #    USERlog
  52. #    bbs
  53. #    bbsmail
  54. #    bull.system
  55. #    ck.mail
  56. #    download
  57. #    file.viewing
  58. #    file.xfer
  59. #    file.xfer.dn
  60. #    file.xfer.up
  61. #    mail.system
  62. #    msgno
  63. #    msgs
  64. #    new.users.file
  65. #    news.poster
  66. #    news.reader
  67. #    newuser.reg
  68. #    opening.screen
  69. #    post.msgs
  70. #    read.mail
  71. #    read.post
  72. #    send.mail
  73. #    sh
  74. #    subsystem.bbs
  75. #    sysop.chat
  76. #    tmp
  77. #    upload
  78. #    user.menu
  79. #    user.welcome
  80. # This Archive created: Mon May 21 10:21:16 1990
  81. #
  82. export PATH; PATH=/bin:$PATH
  83. echo shar: extracting "'0'" '(0 characters)'
  84. if test -f '0'
  85. then
  86. echo shar: will not over-write existing file "'0'"
  87. else
  88. sed 's/^XX//' > '0' << \SHAR_EOF
  89. SHAR_EOF
  90. if test 0 -ne "`wc -c < '0'`"
  91. then
  92. echo shar: error transmitting "'0'" '(should have been 0 characters)'
  93. fi
  94. chmod +x '0'
  95. fi # end of overwriting check
  96. echo shar: extracting "'B.1'" '(1431 characters)'
  97. if test -f 'B.1'
  98. then
  99. echo shar: will not over-write existing file "'B.1'"
  100. else
  101. sed 's/^XX//' > 'B.1' << \SHAR_EOF
  102. XXThis is Bulletin number 1.
  103. XX
  104. XXThis system was written in Borne Shell Script on an OSI Diab DS90-10 Modified
  105. XXDNP. The machine runs DNIX Real Time, Version 5.0 1.2 2.0. It is owned and
  106. XXoperated by Bob Kirkpatrick of Spokane Washington. (509) 535-6575. The system
  107. XXreceives e-mail through uunet to:   ...uunet!isc-br!tau-ceti!dogear![user]
  108. XXDog Ear'd Systems, a Division of Brand-X (c) 1988, 1989, 1990 Bob Kirkpatrick
  109. XX
  110. XX
  111. XXWhile the system is basic at best, it incorporates the essential functions of
  112. XXa BBS, including a hook to rn and postnews. The system is not exactly sophis-
  113. XXtocated, but it works.
  114. XX
  115. XXIt requires that the following utilities exist on the system it is installed 
  116. XXin:
  117. XX        wc     word count
  118. XX        cut    a statement slicing routine
  119. XX        echo    basic statement of display
  120. XX        talk    intra/inter node chat facility
  121. XX        rn    news reader
  122. XX        postnews
  123. XX        
  124. XXThe system requires that a user named 'bbs' exist, and that a group called
  125. XX'user' exists as well. 
  126. XX
  127. XXThe BBS is easily modified, and it's internal editing is a function of the
  128. XXenvironmental variable $EDITOR.
  129. XX
  130. XX
  131. XXInformation regarding the system may be obtained from the author by e-mail.
  132. XX
  133. XX
  134. XX+---------------------------------------------------------------------------+
  135. XX|Bob Kirkpatrick   *    Dog Ear'd Systems,  Spokane, WA    * If it ain't sim|   |                  *   uunet!isc-br!tau-ceti!dogear!bobk   * ple, it stinks.|
  136. XX+---------------------------------------------------------------------------+
  137. SHAR_EOF
  138. if test 1431 -ne "`wc -c < 'B.1'`"
  139. then
  140. echo shar: error transmitting "'B.1'" '(should have been 1431 characters)'
  141. fi
  142. chmod +x 'B.1'
  143. fi # end of overwriting check
  144. echo shar: extracting "'B.2'" '(445 characters)'
  145. if test -f 'B.2'
  146. then
  147. echo shar: will not over-write existing file "'B.2'"
  148. else
  149. sed 's/^XX//' > 'B.2' << \SHAR_EOF
  150. XXThis is Bulletin number 2.
  151. XX
  152. XXThere are 3 file transfer protocols on Dogear. They are:
  153. XX
  154. XX                   XMODEM     YMODEM   and   KERMIT
  155. XX
  156. XXXmodem and Ymodem may be operated using text or binary modes, Kermit defaults
  157. XXto binary. In addition, X and Ymodem may be invoked with either the standard
  158. XX128 byte or 1024 byte packet lengths.
  159. XX
  160. XXFile transfer protocol and configuration are menu selectable to prevent user
  161. XXcommand line errors.
  162. XX
  163. XX
  164. XXEnd of File
  165. SHAR_EOF
  166. if test 445 -ne "`wc -c < 'B.2'`"
  167. then
  168. echo shar: error transmitting "'B.2'" '(should have been 445 characters)'
  169. fi
  170. chmod +x 'B.2'
  171. fi # end of overwriting check
  172. echo shar: extracting "'LOGGEDonce'" '(67 characters)'
  173. if test -f 'LOGGEDonce'
  174. then
  175. echo shar: will not over-write existing file "'LOGGEDonce'"
  176. else
  177. sed 's/^XX//' > 'LOGGEDonce' << \SHAR_EOF
  178. XXsysop        sysop's name
  179. XXbobk        Bob Kirkpatrick
  180. XXficus        Ficus Kirkpatrick
  181. SHAR_EOF
  182. if test 67 -ne "`wc -c < 'LOGGEDonce'`"
  183. then
  184. echo shar: error transmitting "'LOGGEDonce'" '(should have been 67 characters)'
  185. fi
  186. chmod +x 'LOGGEDonce'
  187. fi # end of overwriting check
  188. if test ! -d 'News'
  189. then
  190.     echo shar: creating directory "'News'"
  191.     mkdir 'News'
  192. fi
  193. echo shar: entering directory "'News'"
  194. cd 'News'
  195. echo shar: done with directory "'News'"
  196. cd ..
  197. echo shar: extracting "'USERFILE'" '(80 characters)'
  198. if test -f 'USERFILE'
  199. then
  200. echo shar: will not over-write existing file "'USERFILE'"
  201. else
  202. sed 's/^XX//' > 'USERFILE' << \SHAR_EOF
  203. XXbobk zoot Fri May 18 09:48:44 PDT 1990
  204. XXficus pizza Fri May 18 21:13:50 PDT 1990
  205. SHAR_EOF
  206. if test 80 -ne "`wc -c < 'USERFILE'`"
  207. then
  208. echo shar: error transmitting "'USERFILE'" '(should have been 80 characters)'
  209. fi
  210. chmod +x 'USERFILE'
  211. fi # end of overwriting check
  212. echo shar: extracting "'USERlog'" '(709 characters)'
  213. if test -f 'USERlog'
  214. then
  215. echo shar: will not over-write existing file "'USERlog'"
  216. else
  217. sed 's/^XX//' > 'USERlog' << \SHAR_EOF
  218. XXbkirk  Fri May 11 14:58:48 PDT 1990
  219. XXbkirk  Fri May 11 15:03:59 PDT 1990
  220. XXbkirk  Fri May 11 15:06:53 PDT 1990
  221. XXbkirk  Fri May 11 15:10:10 PDT 1990
  222. XXbkirk  Fri May 11 15:11:03 PDT 1990
  223. XXbkirk  Fri May 11 15:11:43 PDT 1990
  224. XXbkirk  Fri May 11 15:13:30 PDT 1990
  225. XXbkirk  Sat May 12 11:03:56 PDT 1990
  226. XXbkirk  Sat May 12 11:06:50 PDT 1990
  227. XXbkirk  Fri May 18 09:20:02 PDT 1990
  228. XXbkirk  Fri May 18 09:23:41 PDT 1990
  229. XXnew  Fri May 18 09:46:10 PDT 1990
  230. XXnew  Fri May 18 09:48:45 PDT 1990
  231. XXbobk  Fri May 18 10:25:02 PDT 1990
  232. XXnew  Fri May 18 21:13:50 PDT 1990
  233. XXficus  Fri May 18 21:25:30 PDT 1990
  234. XXbobk  Fri May 18 22:08:25 PDT 1990
  235. XXbobk  Fri May 18 22:22:36 PDT 1990
  236. XXbobk  Fri May 18 22:29:23 PDT 1990
  237. XXbobk  Fri May 18 22:32:27 PDT 1990
  238. SHAR_EOF
  239. if test 709 -ne "`wc -c < 'USERlog'`"
  240. then
  241. echo shar: error transmitting "'USERlog'" '(should have been 709 characters)'
  242. fi
  243. chmod +x 'USERlog'
  244. fi # end of overwriting check
  245. echo shar: extracting "'bbs'" '(1374 characters)'
  246. if test -f 'bbs'
  247. then
  248. echo shar: will not over-write existing file "'bbs'"
  249. else
  250. sed 's/^XX//' > 'bbs' << \SHAR_EOF
  251. XX#! /bin/sh
  252. XXtrap interrupt SIGINT
  253. XX/bin/stty -lcase
  254. XXSHELL=.noyoudont
  255. XX# bbs
  256. XX# a simple unix bbs system
  257. XX# written by: Bob Kirkpatrick: Fri May 11 14:45:21 PDT 1990
  258. XX#
  259. XX#
  260. XX.clear
  261. XX/bin/echo "Can your terminal process lower case (y/n): \c"
  262. XXread userans
  263. XXexport userans
  264. XXif [ "$userans" = "y" ]
  265. XXthen
  266. XX    .clear
  267. XX    /bin/echo "Good, all keystrokes MUST be in lowercase for the system to"
  268. XX    /bin/echo "function properly."
  269. XX    /bin/cat ./opening.screen
  270. XX    trap .check_out 0
  271. XXelse
  272. XX    /bin/echo "Sorry, this system is case dependent. You must be able to"
  273. XX    /bin/echo "use lower case characters."
  274. XX    /bin/kill -9 0
  275. XXfi
  276. XX/bin/echo "Please enter username or 'new'"
  277. XX/bin/echo "if new user: \c"
  278. XXread bbsuser
  279. XX[ "$bbsuser" = "" ] && /bin/kill -9 0
  280. XXif [ "$bbsuser" = "new" ]
  281. XXthen
  282. XX    /bin/sh ./newuser.reg
  283. XXelse
  284. XX    founds=`/bin/grep $bbsuser ./USERFILE | wc -l`
  285. XX    if [ "$founds" > 0 ]
  286. XX    then
  287. XX        /bin/echo "Password: \c"
  288. XX        read bbsword
  289. XX        .clear
  290. XX        userok=`/bin/grep $bbsword ./USERFILE | /bin/grep $bbsuser | /bin/wc -l`
  291. XX        if [ "$userok" -gt 0 ]
  292. XX        then
  293. XX            /bin/echo "Thank You"
  294. XX        else
  295. XX            /bin/echo "Don't mean to offend, but that wasn't it."
  296. XX            /bin/echo "You may log back in to retry."
  297. XX            /bin/kill -9 0
  298. XX        fi
  299. XX
  300. XX    else
  301. XX        /bin/echo "User unknown to system"
  302. XX        /bin/echo "Goodbye"
  303. XX        /bin/kill -9 0
  304. XX    fi
  305. XXfi
  306. XXexport bbsuser
  307. XX/bin/echo "$bbsuser  "`/bin/date` >>USERlog
  308. XXwhile true
  309. XXdo
  310. XX    /bin/sh subsystem.bbs
  311. XXdone
  312. XX#
  313. XX# safety net
  314. XX/bin/kill -9 0
  315. SHAR_EOF
  316. if test 1374 -ne "`wc -c < 'bbs'`"
  317. then
  318. echo shar: error transmitting "'bbs'" '(should have been 1374 characters)'
  319. fi
  320. chmod +x 'bbs'
  321. fi # end of overwriting check
  322. if test ! -d 'bbsmail'
  323. then
  324.     echo shar: creating directory "'bbsmail'"
  325.     mkdir 'bbsmail'
  326. fi
  327. echo shar: entering directory "'bbsmail'"
  328. cd 'bbsmail'
  329. echo shar: done with directory "'bbsmail'"
  330. cd ..
  331. echo shar: extracting "'bull.system'" '(683 characters)'
  332. if test -f 'bull.system'
  333. then
  334. echo shar: will not over-write existing file "'bull.system'"
  335. else
  336. sed 's/^XX//' > 'bull.system' << \SHAR_EOF
  337. XX#! /bin/sh
  338. XX#
  339. XX# bull.system
  340. XX#
  341. XX# system bulletin reader
  342. XX# Bob Kirkpatrick  Sat May 12 07:59:03 PDT 1990
  343. XX#
  344. XXwhile true
  345. XXdo
  346. XX    clear
  347. XX    echo "                           ] Dog Ear'd Bulletins ["
  348. XX    echo "=============================================================================="
  349. XX    echo "\n\n\n"
  350. XX    bullno=`lc B.* | wc -l`
  351. XX    if [ "$bullno" -eq "0" ]
  352. XX    then
  353. XX        echo "Sorry, there are no bulletins available today"
  354. XX        sleep 3
  355. XX        exit
  356. XX    fi
  357. XX    echo "Systems has bulletins \c"
  358. XX    for x in B.*
  359. XX    do
  360. XX        x=`echo $x | cut -c3-4`
  361. XX        echo "$x,  \c"
  362. XX    done
  363. XX    echo " "
  364. XX    echo " "
  365. XX    echo "[c/r] to exit"
  366. XX    echo "Read which bulletin: \c"
  367. XX    read userans
  368. XX    if [ "$userans" -eq "" ]
  369. XX    then 
  370. XX        exit
  371. XX    else
  372. XX        more B.$userans
  373. XX    fi
  374. XXdone
  375. SHAR_EOF
  376. echo shar: 3 control characters may be missing from "'bull.system'"
  377. if test 683 -ne "`wc -c < 'bull.system'`"
  378. then
  379. echo shar: error transmitting "'bull.system'" '(should have been 683 characters)'
  380. fi
  381. chmod +x 'bull.system'
  382. fi # end of overwriting check
  383. echo shar: extracting "'ck.mail'" '(0 characters)'
  384. if test -f 'ck.mail'
  385. then
  386. echo shar: will not over-write existing file "'ck.mail'"
  387. else
  388. sed 's/^XX//' > 'ck.mail' << \SHAR_EOF
  389. SHAR_EOF
  390. if test 0 -ne "`wc -c < 'ck.mail'`"
  391. then
  392. echo shar: error transmitting "'ck.mail'" '(should have been 0 characters)'
  393. fi
  394. chmod +x 'ck.mail'
  395. fi # end of overwriting check
  396. if test ! -d 'download'
  397. then
  398.     echo shar: creating directory "'download'"
  399.     mkdir 'download'
  400. fi
  401. echo shar: entering directory "'download'"
  402. cd 'download'
  403. echo shar: done with directory "'download'"
  404. cd ..
  405. echo shar: extracting "'file.viewing'" '(0 characters)'
  406. if test -f 'file.viewing'
  407. then
  408. echo shar: will not over-write existing file "'file.viewing'"
  409. else
  410. sed 's/^XX//' > 'file.viewing' << \SHAR_EOF
  411. SHAR_EOF
  412. if test 0 -ne "`wc -c < 'file.viewing'`"
  413. then
  414. echo shar: error transmitting "'file.viewing'" '(should have been 0 characters)'
  415. fi
  416. chmod +x 'file.viewing'
  417. fi # end of overwriting check
  418. echo shar: extracting "'file.xfer'" '(144 characters)'
  419. if test -f 'file.xfer'
  420. then
  421. echo shar: will not over-write existing file "'file.xfer'"
  422. else
  423. sed 's/^XX//' > 'file.xfer' << \SHAR_EOF
  424. XXclear
  425. XXecho "[U]pload,  [D]ownload, or [A]bort: \c"
  426. XXread userans
  427. XXcase $userans in
  428. XX    u)    sh file.xfer.up ;;
  429. XX    d)    sh file.xfer.dn ;;
  430. XX    a)    exit ;;
  431. XXesac
  432. SHAR_EOF
  433. if test 144 -ne "`wc -c < 'file.xfer'`"
  434. then
  435. echo shar: error transmitting "'file.xfer'" '(should have been 144 characters)'
  436. fi
  437. chmod +x 'file.xfer'
  438. fi # end of overwriting check
  439. echo shar: extracting "'file.xfer.dn'" '(1264 characters)'
  440. if test -f 'file.xfer.dn'
  441. then
  442. echo shar: will not over-write existing file "'file.xfer.dn'"
  443. else
  444. sed 's/^XX//' > 'file.xfer.dn' << \SHAR_EOF
  445. XX#! /bin/sh
  446. XX# file xfer system
  447. XX# Bob Kirkpatrick  Sat May 12 08:41:10 PDT 1990
  448. XX#
  449. XXclear
  450. XXavails=`/bin/echo ./download/* | /bin/wc -w`
  451. XXecho "System has $avails files available"
  452. XXecho "\nDo you want to see the list (y/n) \c"
  453. XXread userans
  454. XXif [ "$userans" = "y" ]
  455. XXthen
  456. XX    /bin/echo "\nPress [ctrl-k] to stop scroll, [ctrl-q] to continue...\n"
  457. XX    /bin/lc ./download 
  458. XX    /bin/echo "\n"
  459. XXfi
  460. XX/bin/echo "\nWildcards in filename(s) are ok..."
  461. XX/bin/echo "Download which file(s)?  [c/r] to end list\n"
  462. XXcnt=0
  463. XXwhile true
  464. XXdo
  465. XX    cnt=`expr $cnt + 1`
  466. XX    /bin/echo "File $cnt> \c"
  467. XX    ans="\n"
  468. XX    read ans
  469. XX    if [ "$ans" = "" ]
  470. XX    then
  471. XX        break
  472. XX    else
  473. XX        userans="$userans $ans"
  474. XX    fi
  475. XXdone    
  476. XXif [ `/bin/echo $userans | wc -c` -lt 2 ]
  477. XXthen
  478. XX    exit
  479. XXfi
  480. XX.clear
  481. XX/bin/echo "Files: $userans\n"
  482. XXcd /bbs/download
  483. XX/bin/echo "\nProtocols\n"
  484. XX/bin/echo "1)  Standard XMODEM       2)  XMODEM 1k Packets"
  485. XX/bin/echo "3)  YMODEM Batch          4)  1k YMODEM Batch"
  486. XX/bin/echo "5)  Kermit                0)  Abort Transfer"
  487. XX/bin/echo "\nUse which [ 1-5 or c/r ]: \c"
  488. XXread ans
  489. XXcase $ans in
  490. XX    1)    /usr/local/xmodem -sbdl $userans ;;
  491. XX    2)    /usr/local/xmodem -sbkdl $userans ;;
  492. XX    3)    /usr/local/xmodem -sbydl $userans ;;
  493. XX    4)    /usr/local/xmodem -sbykdl $userans ;;
  494. XX    5)    /usr/bin/kermit -l /dev/uds1 -b 2400 -s $userans ;;
  495. XX    0)    exit ;;
  496. XXesac
  497. XXcd /bbs
  498. SHAR_EOF
  499. if test 1264 -ne "`wc -c < 'file.xfer.dn'`"
  500. then
  501. echo shar: error transmitting "'file.xfer.dn'" '(should have been 1264 characters)'
  502. fi
  503. chmod +x 'file.xfer.dn'
  504. fi # end of overwriting check
  505. echo shar: extracting "'file.xfer.up'" '(543 characters)'
  506. if test -f 'file.xfer.up'
  507. then
  508. echo shar: will not over-write existing file "'file.xfer.up'"
  509. else
  510. sed 's/^XX//' > 'file.xfer.up' << \SHAR_EOF
  511. XX#! /bin/sh
  512. XX# file xfer system
  513. XX# Bob Kirkpatrick  Sat May 12 08:41:10 PDT 1990
  514. XX#
  515. XXclear
  516. XXecho "Upload what file?  \c"
  517. XXread userans
  518. XXecho "\nProtocols\n"
  519. XXecho "1)  Standard XMODEM       2)  XMODEM 1k Packets"
  520. XXecho "3)  YMODEM Batch          4)  1k YMODEM Batch"
  521. XXecho "5)  Kermit                0)  Abort Transfer"
  522. XXecho "\nUse which [ 1-5 or 0 ]: \c"
  523. XXread ans
  524. XXcase $ans in
  525. XX    1)    xmodem -rb $userans ;;
  526. XX    2)    xmodem -rbk $userans ;;
  527. XX    3)    xmodem -rby $userans ;;
  528. XX    4)    xmodem -rbyk $userans ;;
  529. XX    5)    kermit -l /dev/uds1 -b 2400 -r $userans ;;
  530. XX    0)    exit ;;
  531. XXesac
  532. SHAR_EOF
  533. if test 543 -ne "`wc -c < 'file.xfer.up'`"
  534. then
  535. echo shar: error transmitting "'file.xfer.up'" '(should have been 543 characters)'
  536. fi
  537. chmod +x 'file.xfer.up'
  538. fi # end of overwriting check
  539. echo shar: extracting "'mail.system'" '(951 characters)'
  540. if test -f 'mail.system'
  541. then
  542. echo shar: will not over-write existing file "'mail.system'"
  543. else
  544. sed 's/^XX//' > 'mail.system' << \SHAR_EOF
  545. XX#! /bin/sh
  546. XX# bbs mail system
  547. XX# Bob Kirkpatrick  Sat May 12 12:33:58 PDT 1990
  548. XX#
  549. XXwhile true
  550. XXdo
  551. XX.clear
  552. XX/bin/echo "================================] Mail/Message Menu [=========================\n"
  553. XX/bin/echo " General Instructions:               |   [S]end mail to a user"
  554. XX/bin/echo "                                     |   [G]eneral message post"
  555. XX/bin/echo " To enter a message, simply type the |   [P]ersonal message(s)"
  556. XX/bin/echo " message. There's no text formatting |   [R]ead General posts"
  557. XX/bin/echo " so any required must be manual.     |   [V]iew personal mail"
  558. XX/bin/echo " End your message on an empty line   |   [E]xit to Main Menu"
  559. XX/bin/echo " with an [control-d].                |\n"
  560. XX/bin/echo "=============================================================================\n"
  561. XX/bin/echo "[Mail] Command: \c"
  562. XXread userans
  563. XXcase $userans in
  564. XX    s)    send.mail ;;
  565. XX    g)    post.msgs ;;
  566. XX    p)    ck.mail ;;
  567. XX    r)    read.post ;;
  568. XX    v)    read.mail ;;
  569. XX    e)    exit ;;
  570. XXesac
  571. XXdone
  572. SHAR_EOF
  573. if test 951 -ne "`wc -c < 'mail.system'`"
  574. then
  575. echo shar: error transmitting "'mail.system'" '(should have been 951 characters)'
  576. fi
  577. chmod +x 'mail.system'
  578. fi # end of overwriting check
  579. echo shar: extracting "'msgno'" '(2 characters)'
  580. if test -f 'msgno'
  581. then
  582. echo shar: will not over-write existing file "'msgno'"
  583. else
  584. sed 's/^XX//' > 'msgno' << \SHAR_EOF
  585. XX0
  586. SHAR_EOF
  587. if test 2 -ne "`wc -c < 'msgno'`"
  588. then
  589. echo shar: error transmitting "'msgno'" '(should have been 2 characters)'
  590. fi
  591. chmod +x 'msgno'
  592. fi # end of overwriting check
  593. if test ! -d 'msgs'
  594. then
  595.     echo shar: creating directory "'msgs'"
  596.     mkdir 'msgs'
  597. fi
  598. echo shar: entering directory "'msgs'"
  599. cd 'msgs'
  600. echo shar: done with directory "'msgs'"
  601. cd ..
  602. echo shar: extracting "'new.users.file'" '(548 characters)'
  603. if test -f 'new.users.file'
  604. then
  605. echo shar: will not over-write existing file "'new.users.file'"
  606. else
  607. sed 's/^XX//' > 'new.users.file' << \SHAR_EOF
  608. XXBob Kirkpatrick
  609. XXDog Food
  610. XX123 Street Address
  611. XXSpokane, WASHday
  612. XX123-456-7890
  613. XX
  614. XXPhernt Doc
  615. XXzibble
  616. XX12345 buttski
  617. XXfrabblestadt, ok
  618. XX123 456 1234
  619. XX
  620. XXhsdjhh
  621. XXjsdhkjsdjh
  622. XXjdshj
  623. XXdsjhs
  624. XXjsdh
  625. XX;sdlhj
  626. XXsa
  627. XXsa
  628. XXsa
  629. XXsa
  630. XXsa
  631. XXsa
  632. XX
  633. XX
  634. XX
  635. XX
  636. XX
  637. XX
  638. XX----------- Fri May 18 09:45:19 PDT 1990
  639. XXBob Kirkpatrick
  640. XXphernt
  641. XXI am homeless
  642. XXSpokane, WA
  643. XX509-5356575
  644. XX
  645. XXbobk: added
  646. XX----------- Fri May 18 09:47:59 PDT 1990
  647. XXBob Kirkpatrick
  648. XXPhernt
  649. XXI am homeless
  650. XXSpokane, WA
  651. XX509-535-6575
  652. XX
  653. XXbobk: added
  654. XX----------- Fri May 18 21:13:05 PDT 1990
  655. XXFicus Kirkpatrick
  656. XXbizarre
  657. XXRight here
  658. XXSpokane, Wa
  659. XXbzzzzzzz
  660. XX
  661. XXficus: added
  662. SHAR_EOF
  663. if test 548 -ne "`wc -c < 'new.users.file'`"
  664. then
  665. echo shar: error transmitting "'new.users.file'" '(should have been 548 characters)'
  666. fi
  667. chmod +x 'new.users.file'
  668. fi # end of overwriting check
  669. echo shar: extracting "'news.poster'" '(96 characters)'
  670. if test -f 'news.poster'
  671. then
  672. echo shar: will not over-write existing file "'news.poster'"
  673. else
  674. sed 's/^XX//' > 'news.poster' << \SHAR_EOF
  675. XX#! /bin/sh
  676. XX#
  677. XX# Bob Kirkpatrick Fri May 18 21:56:47 PDT 1990
  678. XX# news poster
  679. XX#
  680. XX/usr/local/postnews
  681. SHAR_EOF
  682. if test 96 -ne "`wc -c < 'news.poster'`"
  683. then
  684. echo shar: error transmitting "'news.poster'" '(should have been 96 characters)'
  685. fi
  686. chmod +x 'news.poster'
  687. fi # end of overwriting check
  688. echo shar: extracting "'news.reader'" '(288 characters)'
  689. if test -f 'news.reader'
  690. then
  691. echo shar: will not over-write existing file "'news.reader'"
  692. else
  693. sed 's/^XX//' > 'news.reader' << \SHAR_EOF
  694. XX#! /bin/sh
  695. XX#
  696. XX# Bob Kirkpatrick Fri May 18 21:51:24 PDT 1990
  697. XX# News reader
  698. XX/bin/echo "------------------------------------------------------------------------------" >.signature
  699. XX/bin/cat LOGGEDonce | /bin/grep $bbsuser >>.signature
  700. XX/bin/rm .rnsoft .rnlast .newsrc .oldnewsrc
  701. XX/usr/local/rn
  702. SHAR_EOF
  703. if test 288 -ne "`wc -c < 'news.reader'`"
  704. then
  705. echo shar: error transmitting "'news.reader'" '(should have been 288 characters)'
  706. fi
  707. chmod +x 'news.reader'
  708. fi # end of overwriting check
  709. echo shar: extracting "'newuser.reg'" '(2192 characters)'
  710. if test -f 'newuser.reg'
  711. then
  712. echo shar: will not over-write existing file "'newuser.reg'"
  713. else
  714. sed 's/^XX//' > 'newuser.reg' << \SHAR_EOF
  715. XX#! /bin/sh
  716. XX# new user registration module
  717. XX# exec with 'sh newuser.reg'
  718. XX#
  719. XX# Fri May 11 13:36:17 PDT 1990
  720. XX#
  721. XXecho "Please answer the following questions. Inaccurate or missing answers"
  722. XXecho "will deny you access."
  723. XXecho " "
  724. XXecho "----------- "`date` >>./new.users.file
  725. XXecho "Enter full name: \c"
  726. XXread userans
  727. XXif [ "$userans" = "" ]
  728. XXthen
  729. XX    echo "ok, fine."
  730. XX    /bin/kill -9 0
  731. XXfi
  732. XXecho $userans >>./new.users.file
  733. XXname=$userans
  734. XXecho "Enter your occupation: \c"
  735. XXread userans
  736. XXif [ "$userans" = "" ]
  737. XXthen
  738. XX    echo "ok, fine."
  739. XX    /bin/kill -9 0
  740. XXfi
  741. XXecho $userans >>./new.users.file
  742. XXecho "Your street address: \c"
  743. XXread userans
  744. XXif [ "$userans" = "" ]
  745. XXthen
  746. XX    echo "ok, fine."
  747. XX    /bin/kill -9 0
  748. XXfi
  749. XXecho $userans >>./new.users.file
  750. XXecho "Your city and state: \c"
  751. XXread userans
  752. XXif [ "$userans" = "" ]
  753. XXthen
  754. XX    echo "ok, fine."
  755. XX    /bin/kill -9 0
  756. XXfi
  757. XXecho $userans >>./new.users.file
  758. XXecho "Your home (voice) phone: \c"
  759. XXread userans
  760. XXif [ "$userans" = "" ]
  761. XXthen
  762. XX    echo "ok, fine."
  763. XX    /bin/kill -9 0
  764. XXfi
  765. XXecho $userans >>./new.users.file
  766. XXecho "Data phone (if any): \c"
  767. XXread userans
  768. XXecho $userans >>./new.users.file
  769. XXecho " "
  770. XXecho "This system disallows handles or other false names. If you wish to"
  771. XXecho "use one, call another bbs. Your system-name here will be your first"
  772. XXecho "name initial, concatenated to the first 4-5 letters of your last"
  773. XXecho "name or vice-versa. eg: John Smith=jsmith or Alice Jameson=alicej."
  774. XXecho " "
  775. XXecho "Would you like to become a system user (y/n): \c"
  776. XXread userans
  777. XXecho " "
  778. XXif [ "$userans" = "y" ]
  779. XXthen
  780. XX    isok=1
  781. XX    while [ $isok -ne 0 ]
  782. XX    do
  783. XX        echo " "
  784. XX        echo "enter the user-name (like the above example)"
  785. XX        echo "that you'll use on this bbs: \c"
  786. XX        read bbsuser
  787. XX        echo " "
  788. XX        tryit=`/bin/cat ./USERFILE | grep $bbsuser | /bin/wc -l`
  789. XX        if [ $tryit -gt 0 ]
  790. XX        then
  791. XX            echo "$bbsuser: name already exists."
  792. XX            echo "try a different (but similar) name"
  793. XX        fi
  794. XX        isok=$tryit
  795. XX    done
  796. XX
  797. XX    echo " "
  798. XX    echo "Enter a SINGLE-WORD password of 4-8 characters: \c"
  799. XX    read userans
  800. XX    export bbsuser
  801. XX    passentry="$bbsuser $userans "`date`
  802. XX    echo "$bbsuser\t\t$name" >>./LOGGEDonce
  803. XX    echo $passentry >>./USERFILE
  804. XX    echo "$bbsuser: added" >>./new.users.file
  805. XX    echo " "
  806. XX    echo "Thanks!"
  807. XXelse
  808. XX    echo "ok, then bye-bye."
  809. XX    kill -9 0
  810. XXfi
  811. XXexit
  812. XXkill -9 0
  813. SHAR_EOF
  814. if test 2192 -ne "`wc -c < 'newuser.reg'`"
  815. then
  816. echo shar: error transmitting "'newuser.reg'" '(should have been 2192 characters)'
  817. fi
  818. chmod +x 'newuser.reg'
  819. fi # end of overwriting check
  820. echo shar: extracting "'opening.screen'" '(81 characters)'
  821. if test -f 'opening.screen'
  822. then
  823. echo shar: will not over-write existing file "'opening.screen'"
  824. else
  825. sed 's/^XX//' > 'opening.screen' << \SHAR_EOF
  826. XX--------------------------
  827. XXWelcome: Dog Ear'd Systems
  828. XX--------------------------
  829. SHAR_EOF
  830. if test 81 -ne "`wc -c < 'opening.screen'`"
  831. then
  832. echo shar: error transmitting "'opening.screen'" '(should have been 81 characters)'
  833. fi
  834. chmod +x 'opening.screen'
  835. fi # end of overwriting check
  836. echo shar: extracting "'post.msgs'" '(281 characters)'
  837. if test -f 'post.msgs'
  838. then
  839. echo shar: will not over-write existing file "'post.msgs'"
  840. else
  841. sed 's/^XX//' > 'post.msgs' << \SHAR_EOF
  842. XX#! /bin/sh
  843. XX# general message posts
  844. XX# Bob Kirkpatrick  Sat May 12 13:18:23 PDT 1990
  845. XX#
  846. XXuserans="\n"
  847. XXmsgcnt=`cat msgno`
  848. XXmsgid=`expr $msgcnt + 1`
  849. XX$EDITOR ./msgs/$msgid.all
  850. XXecho "\n(S)end or (A)bort the message: \c"
  851. XXread ans
  852. XX[ $ans = 'a' ] && rm ./msgs/$msgid*;exit
  853. XXcat $msgid >./msgno
  854. SHAR_EOF
  855. if test 281 -ne "`wc -c < 'post.msgs'`"
  856. then
  857. echo shar: error transmitting "'post.msgs'" '(should have been 281 characters)'
  858. fi
  859. chmod +x 'post.msgs'
  860. fi # end of overwriting check
  861. echo shar: extracting "'read.mail'" '(570 characters)'
  862. if test -f 'read.mail'
  863. then
  864. echo shar: will not over-write existing file "'read.mail'"
  865. else
  866. sed 's/^XX//' > 'read.mail' << \SHAR_EOF
  867. XX#! /bin/sh
  868. XX# mail reader
  869. XX# Bob Kirkpatrick Fri May 18 10:31:03 PDT 1990
  870. XX#
  871. XX/bin/echo "\n\nwait...\c"
  872. XXmwaits=0
  873. XXmwaits=`echo ./msgs/*$bbsuser | wc -w` 
  874. XXif [ $mwaits -eq 0 ] 
  875. XXthen
  876. XX    /bin/echo "Sorry, no mail for you."
  877. XX    /bin/sleep 2
  878. XX    exit
  879. XXfi
  880. XX/bin/echo "$mwaits message(s) waiting."
  881. XX/bin/echo "Read now (y/n) \c"
  882. XXread userans
  883. XX[ "$userans" = "n" ] && exit
  884. XX/bin/echo "\nPRESS 'h' for help. . ."
  885. XXsleep 2
  886. XXfor x in `echo ./msgs/*$bbsuser`
  887. XXdo
  888. XX    /usr/bin/pg -nscp " [q=quit, space=more]: " $x
  889. XX    /bin/echo "Delete this message (y/n) \c"
  890. XX    read userans
  891. XX    [ "$userans" = "y" ] && rm $x
  892. XXdone
  893. SHAR_EOF
  894. if test 570 -ne "`wc -c < 'read.mail'`"
  895. then
  896. echo shar: error transmitting "'read.mail'" '(should have been 570 characters)'
  897. fi
  898. chmod +x 'read.mail'
  899. fi # end of overwriting check
  900. echo shar: extracting "'read.post'" '(264 characters)'
  901. if test -f 'read.post'
  902. then
  903. echo shar: will not over-write existing file "'read.post'"
  904. else
  905. sed 's/^XX//' > 'read.post' << \SHAR_EOF
  906. XX#! /bin/sh -r
  907. XX# read general posts
  908. XX# Bob Kirkpatrick Fri May 18 20:49:32 PDT 1990
  909. XX#
  910. XXgwaits=`echo ./msgs/*.all | wc -w`
  911. XXecho "There are $gwaits item(s) on the general board today"
  912. XXecho "DO you want to read any? (y/n): \c"
  913. XXread userans
  914. XX[ "$userans" = "n" ] && exit
  915. XX
  916. SHAR_EOF
  917. if test 264 -ne "`wc -c < 'read.post'`"
  918. then
  919. echo shar: error transmitting "'read.post'" '(should have been 264 characters)'
  920. fi
  921. chmod +x 'read.post'
  922. fi # end of overwriting check
  923. echo shar: extracting "'send.mail'" '(1002 characters)'
  924. if test -f 'send.mail'
  925. then
  926. echo shar: will not over-write existing file "'send.mail'"
  927. else
  928. sed 's/^XX//' > 'send.mail' << \SHAR_EOF
  929. XX#! /bin/sh
  930. XX# send mail
  931. XX# Bob Kirkpatrick  Sat May 12 13:18:23 PDT 1990
  932. XX#
  933. XXuserans=""
  934. XX/bin/echo "Who are you sending mail to? (c/r only for list)"
  935. XX/bin/echo "To: \c"
  936. XXread userans
  937. XXif [ "$userans" = "" ]
  938. XXthen
  939. XX    /bin/echo "==============================================================================\n"
  940. XX    /usr/bin/pg -p " [q=quit, space=more]: " LOGGEDonce
  941. XX    /bin/echo "\n------------------------------------------------------------------------------"
  942. XX    /bin/echo "\nSend mail to who: \c"
  943. XX    read userans
  944. XXfi
  945. XX[ "$userans" = "" ] && exit
  946. XXmsgcnt=`cat msgno`
  947. XXmsgid=`expr $msgcnt + 1`
  948. XXecho "FROM: "`cat LOGGEDonce | /bin/grep $bbsuser` >./tmp/$msgid.$userans
  949. XXecho "DATE: "`date` >>./tmp/$msgid.$userans
  950. XXecho "------------------------------------------\n" >>./tmp/$msgid.$userans
  951. XX$EDITOR ./tmp/$msgid.$userans
  952. XXecho "------------------------------------------\n" >>./tmp/$msgid.$userans
  953. XXecho "\n(S)end or (A)bort the message: \c"
  954. XXread ans
  955. XX[ $ans = 's' ] && mv ./tmp/$msgid* ./msgs ;exit
  956. XXrm ./tmp/*
  957. XXcat $msgid >./msgno
  958. SHAR_EOF
  959. if test 1002 -ne "`wc -c < 'send.mail'`"
  960. then
  961. echo shar: error transmitting "'send.mail'" '(should have been 1002 characters)'
  962. fi
  963. chmod +x 'send.mail'
  964. fi # end of overwriting check
  965. echo shar: extracting "'sh'" '(80 characters)'
  966. if test -f 'sh'
  967. then
  968. echo shar: will not over-write existing file "'sh'"
  969. else
  970. sed 's/^XX//' > 'sh' << \SHAR_EOF
  971. XX/bin/echo "Yeah, *of course* I'd let you shell out. Sure!"
  972. XX/bin/echo "bullsh*t"
  973. SHAR_EOF
  974. if test 80 -ne "`wc -c < 'sh'`"
  975. then
  976. echo shar: error transmitting "'sh'" '(should have been 80 characters)'
  977. fi
  978. chmod +x 'sh'
  979. fi # end of overwriting check
  980. echo shar: extracting "'subsystem.bbs'" '(584 characters)'
  981. if test -f 'subsystem.bbs'
  982. then
  983. echo shar: will not over-write existing file "'subsystem.bbs'"
  984. else
  985. sed 's/^XX//' > 'subsystem.bbs' << \SHAR_EOF
  986. XX#! /bin/sh
  987. XX#
  988. XX# bbs subsystem
  989. XX#
  990. XX# by Bob Kirkpatrick: Fri May 11 14:59:39 PDT 1990
  991. XX.clear
  992. XX/bin/echo "Today is "`date | /usr/bin/cut -c1-10`
  993. XX/bin/cat ./user.menu
  994. XX/bin/echo "#> \c"
  995. XXread userans
  996. XXcase $userans in
  997. XX    1)    /bin/sh mail.system ;;
  998. XX    2)    /bin/sh file.viewing ;;
  999. XX    3)    /bin/sh file.xfer ;;
  1000. XX    4)    /bin/sh news.reader ;;
  1001. XX    5)    /bin/sh bull.system ;;
  1002. XX    6)    /bin/sh news.poster ;;
  1003. XX    7)    /bin/echo "Sorry, not available"
  1004. XX        /bin/sleep 3 ;;
  1005. XX    8)    /bin/echo "Sorry, not available"
  1006. XX        /bin/sleep 3 ;;
  1007. XX    9)    .clear
  1008. XX        /bin/sh sysop.chat ;;
  1009. XX    0)    .clear
  1010. XX        /bin/echo "Thanks for calling!"
  1011. XX        /bin/kill -9 0 ;;
  1012. XXesac
  1013. SHAR_EOF
  1014. if test 584 -ne "`wc -c < 'subsystem.bbs'`"
  1015. then
  1016. echo shar: error transmitting "'subsystem.bbs'" '(should have been 584 characters)'
  1017. fi
  1018. chmod +x 'subsystem.bbs'
  1019. fi # end of overwriting check
  1020. echo shar: extracting "'sysop.chat'" '(454 characters)'
  1021. if test -f 'sysop.chat'
  1022. then
  1023. echo shar: will not over-write existing file "'sysop.chat'"
  1024. else
  1025. sed 's/^XX//' > 'sysop.chat' << \SHAR_EOF
  1026. XX#
  1027. XX# sysop chat facility
  1028. XX#
  1029. XX# you should substitute your own chat facility if 'talk' isn't available
  1030. XX# on your system.
  1031. XX#
  1032. XXclear
  1033. XXecho "This utility will attempt to page the sysop (root)"
  1034. XXecho "if, after a reasonable number of retries (4), you get no response"
  1035. XXecho "you should abort."
  1036. XXecho " "
  1037. XXecho "To abort, or conclude the chat session, press CONTROL-C..."
  1038. XXecho " "
  1039. XXecho "press [ENTER] to continue. . .\c"
  1040. XXread userans
  1041. XXclear
  1042. XX/bin/sh  /usr/local/talk root
  1043. SHAR_EOF
  1044. if test 454 -ne "`wc -c < 'sysop.chat'`"
  1045. then
  1046. echo shar: error transmitting "'sysop.chat'" '(should have been 454 characters)'
  1047. fi
  1048. chmod +x 'sysop.chat'
  1049. fi # end of overwriting check
  1050. if test ! -d 'tmp'
  1051. then
  1052.     echo shar: creating directory "'tmp'"
  1053.     mkdir 'tmp'
  1054. fi
  1055. echo shar: entering directory "'tmp'"
  1056. cd 'tmp'
  1057. echo shar: done with directory "'tmp'"
  1058. cd ..
  1059. if test ! -d 'upload'
  1060. then
  1061.     echo shar: creating directory "'upload'"
  1062.     mkdir 'upload'
  1063. fi
  1064. echo shar: entering directory "'upload'"
  1065. cd 'upload'
  1066. echo shar: done with directory "'upload'"
  1067. cd ..
  1068. echo shar: extracting "'user.menu'" '(477 characters)'
  1069. if test -f 'user.menu'
  1070. then
  1071. echo shar: will not over-write existing file "'user.menu'"
  1072. else
  1073. sed 's/^XX//' > 'user.menu' << \SHAR_EOF
  1074. XX
  1075. XX               SYSTEM MAIN MENU
  1076. XX==============================================
  1077. XX[1] .. Mail Sub-System     [2] .. File Viewing
  1078. XX[3] .. File Xfer System    [4] .. uunet Reader
  1079. XX[5] .. Bulletin System     [6] .. News Posting
  1080. XX[7] .. C Development       [8] .. C Compiler
  1081. XX[9] .. Sysop Chat Page     [0] .. Exit/Logoff
  1082. XX==============================================
  1083. XXDog Ear's Systems ---- a Division of Brand - X
  1084. XX----------------------------------------------
  1085. XX
  1086. XX
  1087. XX
  1088. XX
  1089. XX[Main Menu] Command
  1090. SHAR_EOF
  1091. if test 477 -ne "`wc -c < 'user.menu'`"
  1092. then
  1093. echo shar: error transmitting "'user.menu'" '(should have been 477 characters)'
  1094. fi
  1095. chmod +x 'user.menu'
  1096. fi # end of overwriting check
  1097. echo shar: extracting "'user.welcome'" '(323 characters)'
  1098. if test -f 'user.welcome'
  1099. then
  1100. echo shar: will not over-write existing file "'user.welcome'"
  1101. else
  1102. sed 's/^XX//' > 'user.welcome' << \SHAR_EOF
  1103. XX
  1104. XXWelcome to Dog Ear.
  1105. XX
  1106. XXThe following bulletins are available:
  1107. XX
  1108. XX        A)    Available download protocols
  1109. XX             documantation on up/downloading
  1110. XX             files to/from this bbs.
  1111. XX
  1112. XX        B)    Archiving schemes and tools
  1113. XX             documentation on compression
  1114. XX             arc, zoo, zip, ...etc.
  1115. XX
  1116. XX        C)    System information and users
  1117. XX
  1118. XX        D)    The mail and news areas
  1119. XX
  1120. XX
  1121. XX
  1122. SHAR_EOF
  1123. if test 323 -ne "`wc -c < 'user.welcome'`"
  1124. then
  1125. echo shar: error transmitting "'user.welcome'" '(should have been 323 characters)'
  1126. fi
  1127. chmod +x 'user.welcome'
  1128. fi # end of overwriting check
  1129. #
  1130. # End of shell archive
  1131. #
  1132. exit 0
  1133. #
  1134. # safety net
  1135. exit 0
  1136. ---------------------[cut here to EOF]------------------------------------
  1137. -- 
  1138. +---------------------------------------------------------------------------+
  1139. |Bob Kirkpatrick   *    Dog Ear'd Systems,  Spokane, WA    *  (509) 535-6575|   |                  *   uunet!isc-br!tau-ceti!dogear!bobk   *                |
  1140. +---------------------------------------------------------------------------+
  1141.  
  1142.  
  1143.