wwiv icon indicating copy to clipboard operation
wwiv copied to clipboard

WWIVEdit only displays the first line not the whole message when quoting using SyncTerm

Open askpatrickw opened this issue 9 years ago • 22 comments

Quoting is not working on Win7 with SyncFoss and WWIVTelnet.

You hit W to reply. You use /q to quote When ask to display lines with numbers select Y and then 1 and the last line number. WWIVEdit displays:

1.

That's it no other text.

askpatrickw avatar Sep 01 '15 23:09 askpatrickw

How did you call WWIVEdit? See INIT, E)xternal Editor Configuration.

ericpareja avatar Sep 04 '15 17:09 ericpareja

The default config as from the install.

WWIV v5.00 (Development) Initialization/Configuration Program.
Copyright (c) 1998-2015, WWIV Software Services                            OVR
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒┌───────────────────────────────────────────── External Editor Configuration ┐▒
▒│ Description       : WWIVEdit -- Highly Recommended                         │▒
▒│ BBS Type          : WWIV                                                   │▒
▒│ Use DOS Interrupts: No                                                     │▒
▒│ Emulate FOSSIL    : Yes                                                    │▒
▒│ Filename to run remotely:                                                  │▒
▒│ C:\WWIV\WWIVEDIT\WWIVEDIT %1 %2 %3 %4                                      │▒
▒│                                                                            │▒
▒│ Filename to run locally:                                                   │▒
▒│ C:\WWIV\WWIVEDIT\WWIVEDIT %1 %2 %3 %4 -key:local -set:local                │▒
▒│                                                                            │▒
▒│ %1 = filename to edit                                                      │▒
▒│ %2 = chars per line                                                        │▒
▒│ %3 = lines per page                                                        │▒
▒│ %4 = max lines                                                             │▒
▒│                                                                            │▒
▒└────────────────────────────────────────────────────────────────────────────┘▒
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
Esc-Exit

askpatrickw avatar Sep 04 '15 18:09 askpatrickw

Can you replace Wwivedit temporarily with a batch file that displays all parameters passed to it? Then post the output to see if it matches expected?

ericpareja avatar Sep 11 '15 02:09 ericpareja

echo %1 %2 %2 %4 %5 %6 %7 %8 %9 >>c:\wwiv\wwiv_out.txt got: C:\wwiv\temp1\input.msg 80 80 120

askpatrickw avatar Sep 11 '15 05:09 askpatrickw

Can you attach your WWIVedit default.def config?

ericpareja avatar Sep 11 '15 16:09 ericpareja

; The default settings -- These work for WWIV 4.21a & WWIV 4.22
; See CONFIG.DOC for a complete description
LOCAL:         [N] Whether this is a local definition
SETUP:         [1] 0=None, 1=CHAIN.TXT, 2=EDITOR.INF (WWIV 4.21a)
RESULT:        [1] 0=None, 1=RESULT.ED, 2=FEDIT.INF (WWIV 4.21a)
REPLY:         [1] 0 = Never Ask User
                   1 = Ask User if E-Mail and user wants to be asked
                   2 = Ask User if user wants to be asked
TAG:           [N] Disable User Tag Lines (if 1 or Y)
BBSTAG:        [N] Disable BBS Tag (if 1 or Y)
COLORS:      [0-9] Legal Color Range (See CONFIG.DOC for format)
MCI:            [] Characters treated as MCI chars as per Merlin's Mod
LINES:    [-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1] (see CONFIG.DOC for meaning)
KEYBOARD:      [2] 0=XT, 1=AT, 2=Attempt to Auto-Detect
MONO:          [3] 0=CGA/EGA/VGA, 1=MONO, 2=Auto-Detect first use, 3=Always Auto

CHATKEY:      [LR] L=Left Shift, R=Right Shift, C=Control, A=Alt
                   LR=Both shifts, CA=Control-Alt, Etc
DOSKEY:         [] Same Format as ChatKey
DIVIDER:        [] Filename of the file that contains Tagline divider
NOTAG: [NOTAG.BBS] File that contains list of bases to exclude BBS tag from
NOPERSON:       [] File that contains list of bases to exclude User Tag From
WARNTIME:     [90] Number of seconds before user is beeped at (0=Never)
ABORTTIME:   [180] Number of seconds before message auto-aborts
ESCTICKS:    [50] Increase this if [A [B [C etc starts appearing remotely
WWIVEDITMACROS:[Y] Whether or not WWIVEdit (MACROS.LCL) macros are allowed
QUOTER:        [2] 0 = None, 1=Goose's Quote 3.01 or greater, 2=WWIV 4.21a
PERSONALDICT:  [Y] Whether or not personal dictionaries should be kept
COLORTITLE:    [Y] Whether or not Color Changes are allowed in the title
MOUSE:         [N] Y=Allow Mouse Locally
DIRECTVIDEO:   [N] Must be set to 0/N for Remote use
SCROLL:        [N] Smooth Scrolling (won't work remotely);
PREFIX:        [>>]
BBSDISABLE:    [1] If Disable Taglines is set in boardedit, and this is 1,
                   then User taglines will still work.  If set to 2, user
                   taglines wont work, but bbs taglines will.
; The following shouldn't be modified unless you know what you are doing!
COMPORT:       [1] Set this to 0 for local and WWIV definitions
FOSSIL:        [1] 1=Use fossil driver if Comport > 0
BBS:           [3] 0=None, 1=WWIV

askpatrickw avatar Sep 11 '15 17:09 askpatrickw

Try SETUP [2] and RESULT [2]

What other files are in C:\wwiv\temp1 when you try to w)rite a reply? You should see the usual drop files, plus: editor.inf fedit.inf input.msg quotes.ind quotes.txt

ericpareja avatar Sep 14 '15 01:09 ericpareja

deleting my previous comments. 1567 does not work. with Autoquote ON in defaults the message is quoted. With Autoquote OFF in defaults, then using /q after you ask wwivedit to disply the message with numbers it only displays the title.

askpatrickw avatar Sep 14 '15 01:09 askpatrickw

nomessage

askpatrickw avatar Sep 14 '15 02:09 askpatrickw

Grr..... you want to be really annoyed. It works fine with NetRunner and fails in SyncTerm.

askpatrickw avatar Sep 25 '15 04:09 askpatrickw

That could be good news. Perhaps it's some character that WWIVEdit adds in quote mode that SyncTerm simply doesn't know how to handle. Any other telnet clients tested?

BloodStoneBBS avatar Sep 25 '15 18:09 BloodStoneBBS

Just tried using Putty, Some reply attempts just abort, others come up with blank titles and then aborts after filling in the title. Oddness. My WWIVEdit test node is wwiv.manicarcade.com 23

BloodStoneBBS avatar Sep 25 '15 19:09 BloodStoneBBS

Updated the title

askpatrickw avatar Sep 30 '15 04:09 askpatrickw

According to the dev of SyncTerm who I sent a raw logfile to...

This may actually be an issue with the telnet server that is being used, or a problem with WWIVEdit.

The telnet specification requires that an "end of line" is transmitted as a CR LF pair... so this is what SyncTERM will send over a telnet connection when Enter is pressed. If WWIVEdit reads the CR as the response to the first line, and LF as part of the response to the last line, this may be causing the issue.

A quick test shows that Netrunner does not send the required CR LF pair, nor the "CR NUL" option given in RFC 854 which states:

  The sequence "CR LF", as defined, will cause the NVT to be
  positioned at the left margin of the next print line (as would,
  for example, the sequence "LF CR").  However, many systems and
  terminals do not treat CR and LF independently, and will have to
  go to some effort to simulate their effect.  (For example, some
  terminals do not have a CR independent of the LF, but on such
  terminals it may be possible to simulate a CR by backspacing.)
  Therefore, the sequence "CR LF" must be treated as a single "new
  line" character and used whenever their combined action is
  intended; the sequence "CR NUL" must be used where a carriage
  return alone is actually desired; and the CR character must be
  avoided in other contexts.  This rule gives assurance to systems
  which must decide whether to perform a "new line" function or a
  multiple-backspace that the TELNET stream contains a character
  following a CR that will allow a rational decision.

One way of testing would be to try it with the connection type set to "Raw". This mode doesn't actually do telnet negotiation or expansion, so would not trigger this issue.

The only way to get SyncTERM to send a bare CR is for the telnet server to negotiate the BINARY option... which triggers other issues.

askpatrickw avatar Oct 22 '15 01:10 askpatrickw

As he suggested might, RAW mode worked fine in SyncTerm. Could this be a telnet server issue?

askpatrickw avatar Oct 22 '15 02:10 askpatrickw

On Wed, Oct 21, 2015 at 07:11:03PM -0700, Patrick wrote:

As he suggested might, RAW mode worked fine in SyncTerm. Could this be a telnet server issue?

I doubt that it's a WWIV telnet server issue. It isn't even in the Linux WWIV chain of programs invoked.

It is likely a WWIVEdit issue in handling CR/LF. I'll experiment with other terminals.

ericpareja avatar Oct 22 '15 04:10 ericpareja

SyncTERM dev here.

If WWIV (like most BBS packages) expects a bare CR to indicate end of line, the telnet server should convert CR LF to CR. I'm not sure what "the Linux WWIV chain of programs" has to do with this issue since it's reported against "Win7 with SyncFoss and WWIVTelnet."

While it would likely work to add a patch to WWIVEdit to ignore LFs, WWIVEdit likely isn't the only program with the same issue.

RealDeuce avatar Oct 22 '15 18:10 RealDeuce

That comment was about running WWIV on Linux. That original comment about syncfoss is no longer applicable either. It happens with wwiv telnet as well. I believe we have the wwivedit source. I'll let the team know.

askpatrickw avatar Oct 22 '15 19:10 askpatrickw

If the program itself is expected to handle the telnet protocol, there are likely issues around the IAC (ASCII 255) as well that the WWIVEdit developers will have to fix.

RealDeuce avatar Oct 22 '15 20:10 RealDeuce

Interesting side note that might be related: Before I switched SyncTerm to RAW, I was also getting "double returns" in wwivedit and when playing DoorMud. So, when I hit ENTER in wwivedit, I would end up two lines down. In DoorMudd when I entered a command and enter (e.g. S <ENTER>) I woudl see the South command and then a blank command. With RAW enabled in SynTerm both these behaviors have stopped and it works as expected.

askpatrickw avatar Oct 22 '15 22:10 askpatrickw

This is likely another manifestation of the same problem. It sounds like they are interpreting both the CR and the LF as separate Enter presses. If this is linux, it's also possible that the tty is translating LF to CR, so the programs get two CRs.

RealDeuce avatar Oct 23 '15 00:10 RealDeuce

I actually just saw this as I was working on the full screen message reader. SyncTerm sends a \r and then a \n when you press enter. Code that's checking for \r only needs to then ignore the \n, otherwise (in my case) I was falling though he having an invalid command of \n

wwiv avatar Dec 11 '16 15:12 wwiv

This is a bug in WWIVEdit and not a WWIV bug. Should be closed here and opened in WWIVEdit? https://github.com/MarkHofmann11/WWIVEdit

ericpareja avatar Jan 03 '23 13:01 ericpareja

Closing here because it isn't in WWIV codebase now. WWIVEdit is a different project/product. WWIV has an internal FSED now.

ericpareja avatar Jan 05 '23 07:01 ericpareja