=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/server-client.c,v retrieving revision 1.360 retrieving revision 1.361 diff -c -r1.360 -r1.361 *** src/usr.bin/tmux/server-client.c 2020/08/05 09:11:09 1.360 --- src/usr.bin/tmux/server-client.c 2020/09/22 05:23:34 1.361 *************** *** 1,4 **** ! /* $OpenBSD: server-client.c,v 1.360 2020/08/05 09:11:09 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: server-client.c,v 1.361 2020/09/22 05:23:34 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott *************** *** 1985,1990 **** --- 1985,1991 ---- switch (imsg->hdr.type) { case MSG_IDENTIFY_FEATURES: case MSG_IDENTIFY_FLAGS: + case MSG_IDENTIFY_LONGFLAGS: case MSG_IDENTIFY_TERM: case MSG_IDENTIFY_TTYNAME: case MSG_IDENTIFY_CWD: *************** *** 2143,2148 **** --- 2144,2150 ---- const char *data, *home; size_t datalen; int flags, feat; + uint64_t longflags; char *name; if (c->flags & CLIENT_IDENTIFIED) *************** *** 2166,2171 **** --- 2168,2181 ---- memcpy(&flags, data, sizeof flags); c->flags |= flags; log_debug("client %p IDENTIFY_FLAGS %#x", c, flags); + break; + case MSG_IDENTIFY_LONGFLAGS: + if (datalen != sizeof longflags) + fatalx("bad MSG_IDENTIFY_LONGFLAGS size"); + memcpy(&longflags, data, sizeof longflags); + c->flags |= longflags; + log_debug("client %p IDENTIFY_LONGFLAGS %#llx", c, + (unsigned long long)longflags); break; case MSG_IDENTIFY_TERM: if (datalen == 0 || data[datalen - 1] != '\0')