home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume13 / modemcap / README < prev   
Encoding:
Text File  |  1988-01-31  |  7.4 KB  |  139 lines

  1. This package is a modem independent dial(3) package.  It provides a device
  2. independent method for dialing and manipulating modems.  The format of the
  3. description file is the ever present ;-) termcaps format.  You may want to
  4. read the modemcap file to see just what capabilities are present.
  5.  
  6. This is Release 1.1 of this software.  Please bear in mind that I haven't
  7. released this to the public before this release.
  8.  
  9. --< Start of the legal conditions of this software >--
  10.  
  11. This software is copyright 1987 John F. Haugh II, all rights reserved.
  12. Use, duplication and disclosure subject to the terms and conditions of
  13. the license agreement below.  This notice is intended to have legal
  14. significance, and not to be taken lightly.  If you have any questions,
  15. please contact the author at the address below.  This copyright covers
  16. the entire software distribution it is enclosed with.  Removing this
  17. copyright is a violation of federal copyright law.  Please consult an
  18. attorney if you have any questions regarding the legal ramifications of
  19. this agreement.
  20.  
  21. This software is licensed subject to the following terms and conditions.
  22. In order that this product may expand into the universe to fill the current
  23. (void) in this area, it is my intention that this software be widely
  24. distributed, and maintained in a consistent fashion.  To this end, you
  25. are authorized to redistribute this software in either source or binary
  26. format, provided that, this agreement is retained as part of the release,
  27. no direct profit is realized from the sale or transfer of this software,
  28. and that credit is given the author for this work.  To facilitate this
  29. package coming into acceptance, you must provide library versions of this
  30. software and any documentation included with this package when distributing
  31. binary versions embedded in your products.  Paying royalties would be
  32. nice and you won't do it anyway, so don't even pretend to be nice people
  33. unless you really want me to stay on top of this thing.  Author retains
  34. all rights to derived works, and as a condition to your making modifications
  35. to the source code, you are required by this agreement to provide detailed
  36. notes concerning the actual modifications and the motivation behind the
  37. modification itself.  Making the documentation look better is a nice idea
  38. also.  And since I'm very lazy, please send me your documentation.  You
  39. don't have to, but standardized documentation is a Good Thing.
  40.  
  41. The author provides this software without warrantee.  The user accepts by
  42. use all responsibility for the performance (or lack thereof ;-) of this
  43. software, including loss of profits, reputation, or job.
  44.  
  45. --< End of the legal stuff, now for the documentation. >--
  46.  
  47. call.c - a test program.  do a `make all' to create the library and compile
  48. the call program.  read all the documentation before trying it out.
  49.  
  50. dial(3L) - a version of the standard dial(3) command which should be fairly
  51. compatible with the one in your manual ...  has both dial() and undial()
  52. routines.  see your manpage for more details.
  53.  
  54. hangup.c/hangup(3L) - a routine that attempts to absolutely hangup a modem.
  55. it uses the modem capabilities database to figure out the best way to
  56. hangup a modem.  it supports both hangup on DTR and hangup on command.
  57.  
  58. initmodem.c/initmodem(3L) - this routine takes a character pointer to a
  59. modem name as it appears in the database and a file descriptor from a
  60. open() call, and loads the database information.  after the database is
  61. loaded, the modem is placed in the command mode.  beware, initmodem()
  62. may make an alarm(2) call if the InitializationDelay requirement is present.
  63.  
  64. mdial.c/mdial(3L) - this routine builds a dial command string to give
  65. to the dialer.  this is the weakest routine in the package, because i don't
  66. have that many different modems around here, and hayes is pretty damned
  67. common, so i don't see many others.  the first argument is a character string
  68. telephone number, digits only, or if you understand your modem (boo on me)
  69. you can put in pause commands.  the second argument is a file descriptor
  70. from an open() call. this routine _will_ be the first to get fixed.
  71.  
  72. merror.c/merror(3L) - this routine is a modemcap replacement for perror.
  73. an `int merrno' variable is maintained by the routines.  after an error
  74. return, you can call merror with a character pointer just like perror(3)
  75. and have a message printed on your standard error output.
  76.  
  77. mgetent.c/mgetent(3L) - this is a low level routine you shouldn't be
  78. calling anyway.  it works like tgetent(3), only different.  mostly, it
  79. doesn't have the neat things.  the first argument is a pointer to a
  80. character buffer where the entry will be placed.  the second argument
  81. is a pointer to the modem name.
  82.  
  83. mgetflag.c/mgetflag(3L) - just like tgetflag.  this is a low level
  84. routine you might just want to use.  in particular, `if (mgetflag ("hc"))'
  85. tests for modem hanging up on DTR being negated.  `if (HC)' does the
  86. same thing after mgetent() ...
  87.  
  88. mgetnum.c/mgetnum(3L) - just like tgetnum.  don't see much use for using
  89. it.
  90.  
  91. mgetstr.c/mgetstr(3L) - just like tgetstr, except it has a few quirks.
  92. octal escapes are all three digits.  the format '^c' where 'c' is some
  93. character, only works with upper case letters.  correctly at least.
  94. ain't no way to get a null into the string, no how.
  95.  
  96. /etc/modemcap - a modem capabilities database.  read the file for more
  97. details.
  98.  
  99. /etc/modemtype - a modem/port mapping table.  look at the example file.
  100.  
  101. you will need to make entries for your devices in the L-devices file.
  102. the speed listed must be a legal speed according to the modemcap file.
  103. any compilation errors or warnings should be brought to my attention. i
  104. didn't get any the last time i compiled all this stuff.
  105.  
  106. the source is well enough (i'm lieing) documented for anyone to fix.
  107. please don't add your local improvement.  if you insist, make the mods
  108. and send me context diffs.  i'll tell you what i think about the change.
  109. remember, according to the license you must let me in on what you are
  110. doing.  this is in everyones best interest.
  111.  
  112. --< End of the documentation, now for my personal philosophical b.s. >--
  113.  
  114. It is not my intention to limit the use of this software or your profits,
  115. except where such use is inconsistent with the spirit of humanity, whatever
  116. the hell that means.  I don't care how much money you make selling your
  117. new terminal program, just don't go jacking the price up because you
  118. have added this thing.  I will only work on this package if I get feedback
  119. and I have some motivation, other than being a nice guy.  I think I've been
  120. nice enough by putting this thing out there.  If what you want makes sense
  121. in a real way, I will probably include your suggestions, and if you are
  122. polite, I might just give you credit ;-)  So don't be a jerk and pretend
  123. that anyone actually works for free.  I have a car note just like you.
  124.  
  125. By way of this license and the legal mumbo-jumbo, I hope to keep people
  126. from ripping me off, and totally trashing and perverting the integrity
  127. of the code.  Please, don't construe this agreement to be limiting in
  128. a negative way.  I hope to provide just enough limits to keep the code
  129. consistent and portable across all machine environments, and hopefully,
  130. you will use this thing enough that it becomes better and more useful
  131. and fills the need for such a thing.  Who knows, we both might just make
  132. some money off of this thing.
  133.  
  134. --
  135. John F. Haugh II        QUOTE: "The important thing is to not stop
  136. 7825 McCallum Blvd.            questioning" -- Albert Einstein
  137. Apt. 510            TELCO: (214) 250-3311
  138. Dallas, TX 75252        UUCP:  { backbone } !ihnp4!killer!jfh
  139.