home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / tin122.zip / README.OS2 next >
Text File  |  1993-10-03  |  9KB  |  257 lines

  1. This is version 1.2 PL2 of the OS/2 port of TIN.
  2.  
  3. An executable version can be obtained from ftp.cdrom.com.  
  4.  
  5. TIN is a newsreader for Usenet news. It can read articles either from a
  6. local article data base (newsspool) or via TCP/IP from a news server using
  7. the Network News Transport Protocol (NNTP).
  8.  
  9. To run TIN you need
  10.   - set environment variables 
  11.   To read news via NNTP
  12.   - TCP/IP access to an nntp server,
  13.   - some free space on a HPFS or NFS partition (FAT will not work, due to 8.3
  14.     file name restriction)
  15.  
  16. optional:  
  17.   - uudecode and uushar utilities 
  18.     Note:  uudecode is posted regularly to comp.binaries.os2 in the "OS/2 
  19.            Binaries Starter's Kit" by mykek@miller.cs.uwm.edu (OS/2 
  20.            binaries moderator)
  21.  
  22.  
  23. Using TIN under OS/2 
  24.  
  25. To run the local newsspool version, start TIN.  To run the NNTP version, 
  26. start TIN -r, or rename TIN.EXE to RTIN.EXE and run RTIN.  
  27.  
  28. TIN runs in an OS/2 windowed session.  It is not a PM application.  TIN 
  29. needs to know who you are, in order to create headers for posts and mail 
  30. correctly. This user information can be supplied to TIN either via 
  31. environment variables or through a Unix-style passwd file.
  32.  
  33. Directories
  34.  
  35. All directories used by TIN must be on a HPFS or NFS partition. FAT will
  36. not work due to the 8.3 filename limitation.
  37.  
  38. Environment Variables 
  39.  
  40. USER      
  41.     userid or short name, no space or punctuation, required.
  42.  
  43. REALNAME  
  44.     Your Full Name, required unless passwd file is used.
  45.  
  46. HOME
  47.     \your\home\directory, required unless passwd file is used.
  48.  
  49. TMP
  50.     Temporary directory - must be on a HPFS partition, required.
  51.  
  52. NNTPSERVER 
  53.     either the fully qualified domain name of the nntp server or
  54.     the dotted internet address of the nntp server, required for 
  55.     NNTP version.
  56.  
  57. HOSTNAME 
  58.     specifies the name of your machine.  It is used to identify your 
  59.     machine to the nntp server, required for NNTP version.
  60.  
  61. TIN_SPOOLDIR
  62.     path to the root of the news spool, required for local newsspool 
  63.     version.
  64.  
  65. TIN_LIBDIR
  66.     path to news control:  active file, newsgroups file etc., required 
  67.     for local newsspool version.
  68.  
  69. TIN_NOVROOTDIR 
  70.     path to overview files, required for local newsspool version.
  71.  
  72. LINES
  73.     specify how many lines you display window has.  If LINES is not set,
  74.     TIN will use the actual height of the display window. You might need
  75.     to set this if you run TIN from a telnet session. Setting this variable
  76.     does not change the height of the window. It only tells TIN how many
  77.     lines to use.
  78.  
  79. COLS
  80.     specify how many columns you display window has.  If COLS is not set,
  81.     TIN will use the actual width of the display window. You might need
  82.     to set this if you run TIN from a telnet session. Setting this variable
  83.     does not change the width of the window. It only tells TIN how many
  84.     columns to use.
  85.  
  86. EDITOR 
  87. VISUAL
  88.     specify the editor to use for composing articles and replies. Defaults
  89.     to 'epm'.
  90.  
  91. SHELL
  92.     specify command shell to use for shell escapes - defaults to whatever
  93.     is set by COMSPEC or the shell field in the passwd file record.
  94.  
  95. Note that none of the environment variables that refer to directories should 
  96. have a trailing backslash '\'.
  97.  
  98. For other environment variables, see ENVIRONMENT VARIABLES in tin.man.  
  99.  
  100.  
  101. Unix-style passwd file
  102.  
  103. If only one person is using TIN to post articles, you can set all required
  104. environment variables in your config.sys file.
  105.  
  106. If a number of users use TIN to post articles, for example via telnet to
  107. the OS/2 machine, it might be easier to use the Unix-style passwd file.
  108. The passwd file is located in the directory set by the environment
  109. variable ETC, usually c:\tcpip\etc.  The same passwd file is used by ftp
  110. and telnet (via loginunx.exe).  See your TCP/IP User's Guide for more
  111. information.
  112.  
  113. TIN does not use the password field, but the full user name, the home
  114. directory and the shell are taken from the passwd file entry.  The
  115. environment variable USER is used to locate the correct entry in the
  116. passwd file.  If it is not set, an error message is issued by TIN.  Two
  117. sample passwd entries follow:
  118.  
  119. andreas:x:1:1:Andreas Wrede:c:/home/andreas:c:/os2/cmd.exe
  120. guest:x:2:2:Guest User:c:/home/guest:d:/ksh/ksh
  121.  
  122.  
  123.  
  124. Setting up TIN to work with UUPC.
  125.  
  126. UUPC v1.11z has the ability to receive batches of news articles and file
  127. them in a news spool directory hierarchy. See the section on RNEWS in
  128. COMMANDS.PRN in the UUPC documentation. Don't set set snews mode: TIN
  129. expects to find a regular news spool.
  130.  
  131. In the following I assume that you have installed UUPC in the directory 
  132. c:\uupc and that your HOME directory is c:\home\name.
  133.  
  134. Unless you have INN style .overview files (which you don't have if you are
  135. using UUPC), both TIN_SPOOLDIR and TIN_NOVROOTDIR should point to the same
  136. directory.  In the UUPC.RC file, this directory is specified by 
  137. NewsDir= . It is the root of the news tree, ie. it should contain a
  138. directory for every top-level newsgroup, such as ALT, COMP, NEWS, BIZ, 
  139. REC, SOC etc.  Each newsgroup in your active file should have a
  140. corresponding directory path, ie. for alt.sources it should be
  141. c:\uupc\news\alt\sources, for comp.os.os2.misc it should be
  142. c:\uupc\news\comp\os\os2\misc.  The articles in each newsgroup should sit
  143. in files with numeric names in the corresponding directories.
  144.  
  145. TIN_LIBDIR should point to the directory that contains the file ACTIVE
  146. which lists all the newsgroups you have in your newsspool. In the UUPC.RC 
  147. file, this directory is specified by the ConfDir= line.  Records (=lines)
  148. in the active file should look similar to this:
  149.  
  150. alt.sources 655 652 y
  151. comp.os.os2.apps 3480 3309 y
  152. comp.os.os2.misc 14565 14513 y
  153. comp.os.os2.programmer 2298 2176 y
  154.  
  155. The first time you run TIN, it will create the directory .tin in the 
  156. directory you specify as HOME, in our example that would be 
  157. c:\home\name\.tin. In that directory, tin will create a number of files and 
  158. subdirectories. In HOME itself, TIN will create the file .newsrc, in our 
  159. case that would be c:\home\name\.newsrc. The .newsrc file lists the
  160. newsgroups you have subscribed to and the article numbers of the articles
  161. you have read. Sample .newsrc lines read like this:
  162.  
  163. alt.sources:  1-652
  164. comp.os.os2.apps:  1-3309
  165. comp.os.os2.misc:  1-14513
  166. comp.os.os2.programmer:  1-2176
  167.  
  168. On my system, I have the following variables set:
  169.  
  170. USER=andreas
  171. REALNAME=Andreas Wrede
  172. HOME=c:\home\andreas
  173. TIN_LIBDIR=c:\uupc
  174. TIN_SPOOLDIR=c:\uupc\news
  175. TIN_NOVROOTDIR=c:\uupc\news
  176.  
  177. Note: The executable version of TIN as compiled requires IBM's TCP/IP 
  178. package. If you do not have the package installed on your system unzip 
  179. the file TCPIPDLL.ZIP. It contains a dummy TCPIPDLL.DLL which satisfies
  180. the the load-time references to TCP/IP functions in TIN. Place the DLL
  181. in a directory listed in your LIBPATH.
  182.  
  183.  
  184. Building TIN for OS/2
  185.  
  186. To build TIN, you need the following:
  187.  
  188.   - Borland C++ for OS/2 or IBM C Set/2
  189.   - PDCurses 2.0 build for the compiler of your choice
  190.  
  191.   For the NNTP version of TIN:
  192.  
  193.   - IBM TCP/IP 1.2.1 CSD UN37938 or higher,
  194.   - IBM TCP/IP 1.2.1 Programmers's Kit CSD UN37942 of higher, with
  195.     modifications as outlined below.
  196.  
  197.  
  198. 1. Make sure that all source files (*.c and *.h) have <CR><LF> as their
  199.    line-ends.  If not, use 'unix2os2 < original >newfile' to correct this.
  200.  
  201. 2. Select the makefile appropriate for your compiler:  Makefile.bcc for
  202.    Borland C++ for OS/2 Makefile.icc for IBM's C Set/2 Compiler
  203.    Note: Borland C is preferred.  You may have to make some adjustments
  204.          when you use IBM's C.
  205.  
  206. 3. Edit the makefile, changing location of include and library files to
  207.    match your installation
  208.  
  209. 4. Correct bugs in \tcpip\include\netdb.h
  210.    find all occurrences of 'char *' that are not followed by '_Seg16'
  211.    and add '_Seg16'. For example change
  212.      SERVENT * _Seg16 _Far16 _Cdecl getservbyname( char *, char * );
  213.     to
  214.      SERVENT * _Seg16 _Far16 _Cdecl getservbyname( char * _Seg16, char * _Seg16 );
  215.    You will also correct the prototype for getservbyport and getprotobyname.
  216.  
  217. 5. If you are using Borland C++, edit the TCP/IP header files:  in
  218.    netdb.h, netlib.h sys/socket.h do the following:
  219.  
  220.       - find the #ifndef __32BIT__ near the top of each file
  221.  
  222.       - change the conditional section as follows:
  223.         #ifndef __32BIT__
  224.         #ifdef __TURBOC__
  225.         #define _Packed
  226.         #define _Seg16 _far16
  227.         #define _Far16 _far16
  228.         #define _Cdecl _cdecl
  229.         #define __32BIT__
  230.         #else
  231.         #define _Packed
  232.         #define _Seg16
  233.         #define _Far16
  234.         #define _Cdecl
  235.         #endif
  236.         #endif
  237.  
  238.       - add the following below the second #endif
  239.         #ifdef __TURBOC__
  240.         #define FAR16P _far16 *
  241.         #else
  242.         #define FAR16P * _Seg16
  243.         #endif
  244.  
  245.      - throughout the files change '* _Seg16' and '* _Seg16' to 'FAR16P'
  246.        After these changes, the TCP/IP package can be used with the Borland
  247.        C compiler.
  248.  
  249. 6. If you are using Borland C++ type 'make -f makefile.bcc' If you are
  250.    using IBM's C Set/2 type 'nmake -f makefile.icc' Ignore warnings,
  251.    especially re _Cdecl and _Seg16 re-definition.
  252.  
  253.  
  254. Enjoy!  
  255.  
  256. Andreas Wrede (andreas@scilink.org) 
  257.