pkgsrc/security/putty/patches/patch-timing.c
ryoon df7a51c086 Update to 0.73
Changelog:
Vulnerabilities fixed in this release include:

 - On Windows, the listening sockets used for local port forwarding
   were opened in a mode that did not prevent other processes from
   also listening on the same ports and stealing some of the incoming
   connections.

 - In the PuTTY terminal, bracketed paste mode was broken in 0.72, in
   a way that made the pasted data look like manual keyboard input. So
   any application relying on the bracketing sequences to protect
   against malicious clipboard contents would have been misled.

 - An SSH-1 server could trigger an access to freed memory by sending
   the SSH1_MSG_DISCONNECT message. Not known to be exploitable.

Other bug fixes include:

 - Windows Plink no longer crashes on startup when it tries to tell
   you it's reusing an existing SSH connection.

 - Windows PuTTY now updates its terminal window size correctly if the
   screen resolution changes while it's maximised.

 - If you display the coloured error messages from gcc in the PuTTY
   terminal, there is no longer a missing character if a colour change
   happens exactly at the end of a line.

 - If you use the 'Clear Scrollback' menu option or escape sequence
   while text in the scrollback is selected, it no longer causes an
   assertion failure.
2019-10-01 15:22:41 +00:00

26 lines
790 B
C

$NetBSD: patch-timing.c,v 1.3 2019/10/01 15:22:41 ryoon Exp $
--- timing.c.orig 2019-09-22 09:14:51.000000000 +0000
+++ timing.c
@@ -60,19 +60,10 @@ static int compare_timers(void *av, void
* Failing that, compare on the other two fields, just so that
* we don't get unwanted equality.
*/
-#if defined(__LCC__) || defined(__clang__)
- /* lcc won't let us compare function pointers. Legal, but annoying. */
- {
- int c = memcmp(&a->fn, &b->fn, sizeof(a->fn));
- if (c)
- return c;
- }
-#else
- if (a->fn < b->fn)
+ if ((uintptr_t)a->fn < (uintptr_t)b->fn)
return -1;
- else if (a->fn > b->fn)
+ else if ((uintptr_t)a->fn > (uintptr_t)b->fn)
return +1;
-#endif
if (a->ctx < b->ctx)
return -1;