Re: ncurses 6.6 regression: setupterm() rejects valid PTY, breaks tmux attach
"Johann 'Myrkraverk' Oskarsson" <[email protected]> Wed, 27 May 2026 17:14:10 +0800
| Newsgroups | gmane.comp.lib.ncurses.bugs |
|---|---|
| Message-ID | <CAA_SOw-ZVHUqgYeTqNE64pmDaqE6yGJShZDWAdA5czvACnCXYg@mail.gmail.com> |
--0000000000008b285a0652c909e0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Please excuse the bullshit, we are having an ncurses episode. So which Single Unix Specification is at fault, and which email list should we include in this discussion? I can add myself as [email protected], but that's just an alias for this email, and I have never worked on the Single Unix Specification myself. Johann I'm not from the internet, I just work there. On Wed, May 27, 2026, 5:03=E2=80=AFPM Liam Huang <[email protected]> wrote: > Hi Johann, > > Just a quick clarification =E2=80=94 the imsg library I'm referring to is= the > OpenBSD IPC library (imsg_init, imsg_compose, etc.), not the macOS > iMessage CLI tool at github.com/openclaw/imsg. They share a name but > are completely unrelated projects. > > The OpenBSD imsg library provides structured message passing over Unix > domain sockets, and is used by many OpenBSD daemons (OpenSMTPD, > OpenBGPD, etc.). tmux bundles a compat copy of it in its source tree > (compat/imsg.c, compat/imsg-buffer.c) so it can build on non-OpenBSD > systems like Linux and macOS. > > This is not a Linux-vs-SUS issue. It's simply that tmux upgraded its > bundled copy of this library between releases 3.5a and 3.6b, and the > new version changed the wire format in a way that's incompatible with > the old one. When an old server and new client try to communicate, the > fd-passing mechanism breaks. > > Best, > Liam > > > 2026=E5=B9=B45=E6=9C=8827=E6=97=A5 16:59=EF=BC=8CJohann 'Myrkraverk' Oska= rsson <[email protected]> =E5=86=99=E9=81=93=EF=BC=9A > > Johann > > > --0000000000008b285a0652c909e0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto"><div>Please excuse the bullshit, we are having an ncurses= episode.</div><div dir=3D"auto"><br></div><div dir=3D"auto"><br></div><div= dir=3D"auto">So which Single Unix Specification is at fault, and which ema= il list should we include in this discussion?=C2=A0 I can add myself as <a = href=3D"mailto:[email protected]">[email protected]</a>, bu= t that's just an alias for this email, and I have never worked on the S= ingle Unix Specification myself.</div><div dir=3D"auto"><br></div><div dir= =3D"auto"><br></div><div><br></div><div data-smartmail=3D"gmail_signature">= Johann<br><br> =C2=A0I'm not from the internet, I just work there.</div= ></div><br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr= " class=3D"gmail_attr">On Wed, May 27, 2026, 5:03=E2=80=AFPM Liam Huang <= ;<a href=3D"mailto:[email protected]">[email protected]</a>> wrote:<br></div><blockq= uote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc = solid;padding-left:1ex"><div style=3D"line-break:after-white-space"><div>Hi= Johann,</div><div><br></div><div>Just a quick clarification =E2=80=94 the = imsg library I'm referring to is the</div><div>OpenBSD IPC library (ims= g_init, imsg_compose, etc.), not the macOS</div><div>iMessage CLI tool at <= a href=3D"http://github.com/openclaw/imsg" target=3D"_blank" rel=3D"norefer= rer">github.com/openclaw/imsg</a>. They share a name but</div><div>are comp= letely unrelated projects.</div><div><br></div><div>The OpenBSD imsg librar= y provides structured message passing over Unix</div><div>domain sockets, a= nd is used by many OpenBSD daemons (OpenSMTPD,</div><div>OpenBGPD, etc.). t= mux bundles a compat copy of it in its source tree</div><div>(compat/imsg.c= , compat/imsg-buffer.c) so it can build on non-OpenBSD</div><div>systems li= ke Linux and macOS.</div><div><br></div><div>This is not a Linux-vs-SUS iss= ue. It's simply that tmux upgraded its</div><div>bundled copy of this l= ibrary between releases 3.5a and 3.6b, and the</div><div>new version change= d the wire format in a way that's incompatible with</div><div>the old o= ne. When an old server and new client try to communicate, the</div><div>fd-= passing mechanism breaks.</div><div><br></div><div>Best,</div><div>Liam</di= v><div><br></div><div><br><blockquote type=3D"cite"><div>2026=E5=B9=B45=E6= =9C=8827=E6=97=A5 16:59=EF=BC=8CJohann 'Myrkraverk' Oskarsson <<= a href=3D"mailto:[email protected]" target=3D"_blank" rel=3D"noreferrer= ">[email protected]</a>> =E5=86=99=E9=81=93=EF=BC=9A</div><br><div><= span style=3D"font-family:Helvetica;font-size:12px;font-style:normal;font-v= ariant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;t= ext-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text= -decoration:none;float:none;display:inline!important">Johann</span></div></= blockquote></div><br></div></blockquote></div> --0000000000008b285a0652c909e0--