Browse Source

fix regression with applications that expect struct winsize in ioctl.h

putting the (simple) definition in alltypes.h seems like the best
solution here. making sys/ioctl.h implicitly include termios.h is
probably excess namespace pollution.
master
Rich Felker 6 years ago
parent
commit
1ccc804e13
  1. 2
      include/alltypes.h.in
  2. 2
      include/sys/ioctl.h
  3. 8
      include/termios.h

2
include/alltypes.h.in

@ -77,6 +77,8 @@ TYPEDEF struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t;
STRUCT iovec { void *iov_base; size_t iov_len; };
STRUCT winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
TYPEDEF unsigned socklen_t;
TYPEDEF unsigned short sa_family_t;

2
include/sys/ioctl.h

@ -4,6 +4,8 @@
extern "C" {
#endif
#define __NEED_struct_winsize
#include <bits/alltypes.h>
#include <bits/ioctl.h>

8
include/termios.h

@ -8,6 +8,7 @@ extern "C" {
#include <features.h>
#define __NEED_pid_t
#define __NEED_struct_winsize
#include <bits/alltypes.h>
@ -15,13 +16,6 @@ typedef unsigned char cc_t;
typedef unsigned int speed_t;
typedef unsigned int tcflag_t;
struct winsize {
unsigned short ws_row;
unsigned short ws_col;
unsigned short ws_xpixel;
unsigned short ws_ypixel;
};
#define NCCS 32
#include <bits/termios.h>

Loading…
Cancel
Save