diff options
author | Richard Lowe <richlowe@richlowe.net> | 2021-04-05 14:06:47 -0500 |
---|---|---|
committer | Richard Lowe <richlowe@richlowe.net> | 2021-04-09 15:48:05 -0500 |
commit | 8222814ef8560ee0ba222eca8ca5acffc6cd0e44 (patch) | |
tree | 55274c4f702ccf5aa98764391b250a81ba3f1990 /usr/src/ucblib | |
parent | 99ea293e719ac006d413e4fde6ac0d5cd4dd6c59 (diff) | |
download | illumos-gate-8222814ef8560ee0ba222eca8ca5acffc6cd0e44.tar.gz |
13487 want mapfile-based assertions about symbol properties
Reviewed by: Robert Mustacchi <rm@fingolfin.org>
Reviewed by: Jason King <jason.brian.king@gmail.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src/ucblib')
-rw-r--r-- | usr/src/ucblib/libcurses/mapfile-vers | 224 | ||||
-rw-r--r-- | usr/src/ucblib/libdbm/mapfile-vers | 18 | ||||
-rw-r--r-- | usr/src/ucblib/libtermcap/mapfile-vers | 8 | ||||
-rw-r--r-- | usr/src/ucblib/libucb/port/mapfile-vers | 41 |
4 files changed, 159 insertions, 132 deletions
diff --git a/usr/src/ucblib/libcurses/mapfile-vers b/usr/src/ucblib/libcurses/mapfile-vers index a5a3d7fce6..925671f9cf 100644 --- a/usr/src/ucblib/libcurses/mapfile-vers +++ b/usr/src/ucblib/libcurses/mapfile-vers @@ -40,127 +40,147 @@ $mapfile_version 2 SYMBOL_VERSION SUNW_1.1 { global: - AL; - AL_PARM; - AM; - BC; + AL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + AL_PARM { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize; + }; + }; + AM { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + BC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; box; - BS; - BT; - CA; - CD; - CE; - CL; - CM; - COLS; - CR; - CS; - curscr; - DA; - DB; - DC; - Def_term; + BS { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + BT { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + CA { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + CD { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + CE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + CL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + CM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + COLS { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; + CR { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + CS { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + curscr { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + DA { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + DB { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + DC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + Def_term { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; delwin; - DL; - DL_PARM; - DM; - DO; - DOWN_PARM; - _echoit; - ED; - EI; + DL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + DL_PARM { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize; + }; + }; + DM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + DO { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + DOWN_PARM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + _echoit { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + ED { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + EI { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; endwin; - _endwin; - EO; + _endwin { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + EO { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; getcap; gettmode; - GT; - HC; - HO; - HZ; - IC; + GT { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + HC { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + HO { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + HZ { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + IC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; idlok; - IM; - IN; + IM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + IN { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; initscr; - IP; - K0; - K1; - K2; - K3; - K4; - K5; - K6; - K7; - K8; - K9; - KD; - KE; - KH; - KL; - KR; - KS; - KU; - LEFT_PARM; - LINES; - LL; + IP { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K0 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K1 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K2 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K3 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K4 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K5 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K6 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K7 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K8 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + K9 { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KD { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KH { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KR { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KS { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + KU { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + LEFT_PARM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + LINES { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; + LL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; longname; - MA; - MI; - MS; + MA { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + MI { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + MS { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; mvcur; mvprintw; mvscanw; mvwin; mvwprintw; mvwscanw; - My_term; - NC; - ND; + My_term { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + NC { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + ND { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; newwin; - NL; - NONL; - normtty; - NS; - OS; + NL { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + NONL { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + normtty { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + NS { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + OS { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; overlay; overwrite; - PC; - _pfast; + PC { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + _pfast { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; printw; - _rawmode; - RC; - _res_flg; - RIGHT_PARM; - SC; + _rawmode { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + RC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + _res_flg { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; + RIGHT_PARM { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + SC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; scanw; scroll; - SE; + SE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; setterm; - SF; - SO; - SR; - stdscr; + SF { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + SO { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + SR { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + stdscr { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; subwin; - TA; - TE; - TI; + TA { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + TE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + TI { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; touchline; touchwin; - _tty; - _tty_ch; - ttytype; - UC; - UE; - UL; - _unctrl; - UP; - UP_PARM; - UPPERCASE; - US; - VB; - VE; - VS; + _tty { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; + _tty_ch { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; + ttytype { ASSERT = { TYPE = OBJECT; SIZE = 50; }; }; + UC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + UE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + UL { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + _unctrl { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize[128]; + }; + }; + UP { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + UP_PARM { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize; + }; + }; + UPPERCASE { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + US { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + VB { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + VE { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + VS { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; waddch; waddstr; wclear; @@ -179,11 +199,11 @@ SYMBOL_VERSION SUNW_1.1 { wscanw; wstandend; wstandout; - XB; - XN; - XS; - XT; - XX; + XB { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + XN { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + XS { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + XT { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; + XX { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; }; SYMBOL_VERSION SUNWprivate_1.1 { diff --git a/usr/src/ucblib/libdbm/mapfile-vers b/usr/src/ucblib/libdbm/mapfile-vers index 91a6fa644b..495328dda1 100644 --- a/usr/src/ucblib/libdbm/mapfile-vers +++ b/usr/src/ucblib/libdbm/mapfile-vers @@ -40,21 +40,21 @@ $mapfile_version 2 SYMBOL_VERSION SUNW_1.1 { global: - bitno; - blkno; + bitno { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + blkno { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; dbmclose; dbminit; - dbrdonly; + dbrdonly { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; delete; - dirbuf; - dirf; + dirbuf { ASSERT = { TYPE = OBJECT; SIZE = 4096; }; }; + dirf { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; fetch; firstkey; - hmask; - maxbno; + hmask { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + maxbno { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; nextkey; - pagbuf; - pagf; + pagbuf { ASSERT = { TYPE = OBJECT; SIZE = 1024; }; }; + pagf { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; store; }; diff --git a/usr/src/ucblib/libtermcap/mapfile-vers b/usr/src/ucblib/libtermcap/mapfile-vers index c977042dd3..abacf9b42e 100644 --- a/usr/src/ucblib/libtermcap/mapfile-vers +++ b/usr/src/ucblib/libtermcap/mapfile-vers @@ -40,16 +40,16 @@ $mapfile_version 2 SYMBOL_VERSION SUNW_1.1 { global: - BC; - ospeed; - PC; + BC { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; + ospeed { ASSERT = { TYPE = OBJECT; SIZE = 2; }; }; + PC { ASSERT = { TYPE = OBJECT; SIZE = 1; }; }; tgetent; tgetflag; tgetnum; tgetstr; tgoto; tputs; - UP; + UP { ASSERT = { TYPE = OBJECT; SIZE = addrsize; }; }; local: *; }; diff --git a/usr/src/ucblib/libucb/port/mapfile-vers b/usr/src/ucblib/libucb/port/mapfile-vers index 09dd708502..e6424acc42 100644 --- a/usr/src/ucblib/libucb/port/mapfile-vers +++ b/usr/src/ucblib/libucb/port/mapfile-vers @@ -40,7 +40,12 @@ $mapfile_version 2 SYMBOL_VERSION SUNW_1.3 { global: - _siguhandler; + _siguhandler { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize[34]; + }; + }; } SUNW_1.2; # Due to mistakes made early in the history of this library, there are @@ -57,7 +62,7 @@ SYMBOL_VERSION SUNW_1.2 { # between platforms: # amd64: SUNW_1.1 is empty, and SUNW_0.7 contains everything. # i386, sparc: SUNW_1.1 contains 5 largefile API routines, and everything -# else in in SUNW_0.7. +# else in in SUNW_0.7. # sparcv9: Everything is in SUNW_1.1, and SUNW_0.7 is empty SYMBOL_VERSION SUNW_1.1 { @@ -92,7 +97,7 @@ $endif gethostid; gethostname; getpagesize; - getrusage { TYPE = FUNCTION; FILTER = libc.so.1 }; + getrusage { TYPE = FUNCTION; FILTER = libc.so.1; }; gettimeofday; getwd; index; @@ -122,16 +127,21 @@ $endif sigstack; sigvec; sigvechandler; - sleep { TYPE = FUNCTION; FILTER = libc.so.1 }; + sleep { TYPE = FUNCTION; FILTER = libc.so.1; }; sprintf; srand; statfs; - sys_siglist; + sys_siglist { + ASSERT = { + TYPE = OBJECT; + SIZE = addrsize[34]; + }; + }; times; - ualarm { TYPE = FUNCTION; FILTER = libc.so.1 }; + ualarm { TYPE = FUNCTION; FILTER = libc.so.1; }; usignal; usigpause; - usleep { TYPE = FUNCTION; FILTER = libc.so.1 }; + usleep { TYPE = FUNCTION; FILTER = libc.so.1; }; vfprintf; vprintf; vsprintf; @@ -146,8 +156,8 @@ $if _sparc longjmp; setjmp; $elif _x86 && _ELF32 - longjmp { TYPE = FUNCTION; FILTER = libc.so.1 }; - setjmp { TYPE = FUNCTION; FILTER = libc.so.1 }; + longjmp { TYPE = FUNCTION; FILTER = libc.so.1; }; + setjmp { TYPE = FUNCTION; FILTER = libc.so.1; }; $endif $if _sparc && _ELF64 @@ -183,20 +193,17 @@ $if _sparc _setjmp; __sigcleanup; $if _ELF32 - syscall { TYPE = FUNCTION; FILTER = libc.so.1 }; + syscall { TYPE = FUNCTION; FILTER = libc.so.1; }; $endif $endif $if _x86 && _ELF32 - _longjmp { TYPE = FUNCTION; FILTER = libc.so.1 }; - _setjmp { TYPE = FUNCTION; FILTER = libc.so.1 }; - _syscall { TYPE = FUNCTION; FILTER = libc.so.1 }; - _times { TYPE = FUNCTION; FILTER = libc.so.1 }; + _longjmp { TYPE = FUNCTION; FILTER = libc.so.1; }; + _setjmp { TYPE = FUNCTION; FILTER = libc.so.1; }; + _syscall { TYPE = FUNCTION; FILTER = libc.so.1; }; + _times { TYPE = FUNCTION; FILTER = libc.so.1; }; $endif - local: *; }; - - |