summaryrefslogtreecommitdiffstats
path: root/Modules/termios.c
diff options
context:
space:
mode:
authorRonald Oussoren <ronaldoussoren@mac.com>2023-12-07 10:27:30 (GMT)
committerGitHub <noreply@github.com>2023-12-07 10:27:30 (GMT)
commit4b125dd31a634871d3b2d06ebfd1b9aef539766b (patch)
tree33708c143339b859cf520c6beccdd554d1ad5bf3 /Modules/termios.c
parent4ba15de19153bb97308996ec85242bdeda358387 (diff)
downloadcpython-4b125dd31a634871d3b2d06ebfd1b9aef539766b.zip
cpython-4b125dd31a634871d3b2d06ebfd1b9aef539766b.tar.gz
cpython-4b125dd31a634871d3b2d06ebfd1b9aef539766b.tar.bz2
gh-51944: Add missing macOS constants to termios (#112823)
* gh-51944: Add some macOS constants to termios This changeset adds all public constants in <termio.h> and <sys/termios.h> on macOS that weren't present already. Based on the macOS 14.2 SDK Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Diffstat (limited to 'Modules/termios.c')
-rw-r--r--Modules/termios.c61
1 files changed, 61 insertions, 0 deletions
diff --git a/Modules/termios.c b/Modules/termios.c
index 9fc2673..1d97a3a 100644
--- a/Modules/termios.c
+++ b/Modules/termios.c
@@ -702,6 +702,9 @@ static struct constant {
#ifdef IMAXBEL
{"IMAXBEL", IMAXBEL},
#endif
+#ifdef IUTF8
+ {"IUTF8", IUTF8},
+#endif
/* struct termios.c_oflag constants */
{"OPOST", OPOST},
@@ -726,6 +729,12 @@ static struct constant {
#ifdef OFDEL
{"OFDEL", OFDEL},
#endif
+#ifdef OXTABS
+ {"OXTABS", OXTABS},
+#endif
+#ifdef ONOEOT
+ {"ONOEOT", ONOEOT},
+#endif
#ifdef NLDLY
{"NLDLY", NLDLY},
#endif
@@ -752,6 +761,12 @@ static struct constant {
#ifdef NL1
{"NL1", NL1},
#endif
+#ifdef NL2
+ {"NL2", NL2},
+#endif
+#ifdef NL3
+ {"NL3", NL3},
+#endif
#ifdef CR0
{"CR0", CR0},
#endif
@@ -799,6 +814,9 @@ static struct constant {
#endif
/* struct termios.c_cflag constants */
+#ifdef CIGNORE
+ {"CIGNORE", CIGNORE},
+#endif
{"CSIZE", CSIZE},
{"CSTOPB", CSTOPB},
{"CREAD", CREAD},
@@ -813,6 +831,22 @@ static struct constant {
{"CRTSCTS", (long)CRTSCTS},
#endif
+#ifdef CRTS_IFLOW
+ {"CRTS_IFLOW", CRTS_IFLOW},
+#endif
+#ifdef CDTR_IFLOW
+ {"CDTR_IFLOW", CDTR_IFLOW},
+#endif
+#ifdef CDSR_OFLOW
+ {"CDSR_OFLOW", CDSR_OFLOW},
+#endif
+#ifdef CCAR_OFLOW
+ {"CCAR_OFLOW", CCAR_OFLOW},
+#endif
+#ifdef MDMBUF
+ {"MDMBUF", MDMBUF},
+#endif
+
/* struct termios.c_cflag-related values (character size) */
{"CS5", CS5},
{"CS6", CS6},
@@ -820,6 +854,9 @@ static struct constant {
{"CS8", CS8},
/* struct termios.c_lflag constants */
+#ifdef ALTWERASE
+ {"ALTWERASE", ALTWERASE},
+#endif
{"ISIG", ISIG},
{"ICANON", ICANON},
#ifdef XCASE
@@ -841,12 +878,18 @@ static struct constant {
#ifdef FLUSHO
{"FLUSHO", FLUSHO},
#endif
+#ifdef NOKERNINFO
+ {"NOKERNINFO", NOKERNINFO},
+#endif
{"NOFLSH", NOFLSH},
{"TOSTOP", TOSTOP},
#ifdef PENDIN
{"PENDIN", PENDIN},
#endif
{"IEXTEN", IEXTEN},
+#ifdef EXTPROC
+ {"EXTPROC", EXTPROC},
+#endif
/* indexes into the control chars array returned by tcgetattr() */
{"VINTR", VINTR},
@@ -855,6 +898,9 @@ static struct constant {
{"VKILL", VKILL},
{"VEOF", VEOF},
{"VTIME", VTIME},
+#ifdef VSTATUS
+ {"VSTATUS", VSTATUS},
+#endif
{"VMIN", VMIN},
#ifdef VSWTC
/* The #defines above ensure that if either is defined, both are,
@@ -865,6 +911,9 @@ static struct constant {
{"VSTART", VSTART},
{"VSTOP", VSTOP},
{"VSUSP", VSUSP},
+#ifdef VDSUSP
+ {"VDSUSP", VREPRINT},
+#endif
{"VEOL", VEOL},
#ifdef VREPRINT
{"VREPRINT", VREPRINT},
@@ -883,6 +932,18 @@ static struct constant {
#endif
+#ifdef B7200
+ {"B7200", B7200},
+#endif
+#ifdef B14400
+ {"B14400", B14400},
+#endif
+#ifdef B28800
+ {"B28800", B28800},
+#endif
+#ifdef B76800
+ {"B76800", B76800},
+#endif
#ifdef B460800
{"B460800", B460800},
#endif