A NOTE has been added to this issue. 
====================================================================== 
http://austingroupbugs.net/view.php?id=1151 
====================================================================== 
Reported By:                Clausecker
Assigned To:                
====================================================================== 
Project:                    1003.1(2016)/Issue7+TC2
Issue ID:                   1151
Category:                   System Interfaces
Type:                       Enhancement Request
Severity:                   Editorial
Priority:                   normal
Status:                     New
Name:                       Robert Clausecker 
Organization:               Fraunhofer Fokus 
User Reference:              
Section:                    termios.h, signal.h, 2.4.3 "Signal Actions", 11.2
"Parameters that Can be Set", new sections tcgetsize and tcsetsize 
Page Number:                414, 333, 494, 212 
Line Number:                13877, 11115, 16845–16879, 7040 
Interp Status:              --- 
Final Accepted Text:         
====================================================================== 
Date Submitted:             2017-06-19 16:41 UTC
Last Modified:              2017-06-19 18:43 UTC
====================================================================== 
Summary:                    Introduce new signal SIGWINCH and functions
tcsetsize(), tcgetsize() to get/set terminal window size
====================================================================== 

---------------------------------------------------------------------- 
 (0003789) Clausecker (reporter) - 2017-06-19 18:43
 http://austingroupbugs.net/view.php?id=1151#c3789 
---------------------------------------------------------------------- 
struct winsize is the historic name for this structure, used since at least
1989. Renaming it might cause more problems than it solves. Note that
tcsetsize and tcgetsize aren't reserved by POSIX either (probably by
mistake).

Mandating unsigned long as the type for the members is a bad idea as this
contradicts existing implementations. All implementations I checked use
unsigned short for this type. As I already mentioned, introducing a typedef
windim_t might be a good compromise between compatibility and future
expansions.

I don't see how adding ENOTSUP might be a good idea. If the terminal's size
cannot be changed, an implementation may either decide to make size changes
have no effect (this might be a good idea for serial ports where the device
driver cannot change the terminal but e.g. login(8) might want to set up
the window size with information from the termcap database) or decide that
each other possible terminal size is invalid, returning EINVAL.

Changing the terminal size to itself should never cause an error, even on a
fixed-size terminal. Perhaps that invariant should be specified, too. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2017-06-19 16:41 Clausecker     New Issue                                    
2017-06-19 16:41 Clausecker     File Added: sigwinch-proposal.txt               
    
2017-06-19 16:41 Clausecker     Name                      => Robert Clausecker
2017-06-19 16:41 Clausecker     Organization              => Fraunhofer Fokus
2017-06-19 16:41 Clausecker     Section                   => termios.h,
signal.h, 2.4.3 "Signal Actions", 11.2 "Parameters that Can be Set", new
sections tcgetsize and tcsetsize
2017-06-19 16:41 Clausecker     Page Number               => 414, 333, 494, 212
2017-06-19 16:41 Clausecker     Line Number               => 13877, 11115,
16845–16879, 7040
2017-06-19 17:32 shware_systems Note Added: 0003786                          
2017-06-19 17:33 shware_systems Note Edited: 0003786                         
2017-06-19 18:06 EdSchouten     Note Added: 0003787                          
2017-06-19 18:11 shware_systems Note Added: 0003788                          
2017-06-19 18:43 Clausecker     Note Added: 0003789                          
======================================================================


Reply via email to