glibc/elf
Adhemerval Zanella 71e408e45d elf: Fix tst-relro-symbols.py argument passing
Current scheme only consideres the first argument for both --required
and --optional, where the idea is to append a new item.

Checked on x86_64-linux-gnu.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
2022-12-15 16:59:13 -03:00
..
tst-glibc-hwcaps-2-cache.root
tst-glibc-hwcaps-cache.root
tst-glibc-hwcaps-prepend-cache.root
tst-ldconfig-bad-aux-cache.root
tst-ldconfig-ld_so_conf-update.root
argv0test.c
cache.c elf: Remove hwcap and bits_hwcap fields from struct cache_entry 2022-10-06 07:59:48 -03:00
chroot_canon.c
circleload1.c
circlemod1.c
circlemod1a.c
circlemod2.c
circlemod2a.c
circlemod3.c
circlemod3a.c
constload1.c
constload2.c
constload3.c
dblload.c
dblloadmod1.c
dblloadmod2.c
dblloadmod3.c
dblunload.c
dep1.c
dep2.c
dep3.c
dep4.c
dl-addr-obj.c
dl-addr.c
dl-audit.c
dl-brk.c
dl-cache.c
dl-call_fini.c elf: Introduce to _dl_call_fini 2022-10-27 11:36:44 +02:00
dl-call-libc-early-init.c
dl-catch.c elf: Rework exception handling in the dynamic loader [BZ #25486] 2022-11-03 09:39:31 +01:00
dl-close.c elf: Introduce to _dl_call_fini 2022-10-27 11:36:44 +02:00
dl-compat.c
dl-debug-symbols.S
dl-debug.c
dl-deps.c
dl-diagnostics-cpu.c
dl-diagnostics-kernel.c
dl-diagnostics.c
dl-diagnostics.h
dl-dst.h
dl-early_allocate.c
dl-environ.c
dl-exception.c
dl-execstack.c
dl-find_object.c
dl-find_object.h
dl-fini.c elf: Introduce to _dl_call_fini 2022-10-27 11:36:44 +02:00
dl-fptr.c
dl-hwcaps_split.c
dl-hwcaps-subdirs.c
dl-hwcaps.c elf: Remove legacy hwcaps support from the dynamic loader 2022-10-06 07:59:48 -03:00
dl-hwcaps.h
dl-init.c
dl-is_dso.h
dl-iteratephdr.c
dl-libc_freeres.c
dl-libc.c
dl-load.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
dl-load.h
dl-lookup-direct.c
dl-lookup.c elf: Reinstate on DL_DEBUG_BINDINGS _dl_lookup_symbol_x 2022-10-26 09:47:10 -03:00
dl-machine-reject-phdr.h
dl-main.h
dl-map-segments.h
dl-minimal-malloc.c
dl-minimal.c
dl-misc.c
dl-mutex.c
dl-object.c
dl-open.c elf: Do not completely clear reused namespace in dlmopen (bug 29600) 2022-10-14 11:02:25 +02:00
dl-origin.c
dl-printf.c elf: Remove allocate use on _dl_debug_printf 2022-11-02 11:30:24 -03:00
dl-profile.c elf: Use C11 atomics on _dl_mcount 2022-09-21 10:57:47 -03:00
dl-profstub.c
dl-reloc-static-pie.c
dl-reloc.c
dl-runtime.c
dl-runtime.h
dl-sbrk.c
dl-scope.c
dl-setup_hash.c
dl-sort-maps.c elf: Implement force_first handling in _dl_sort_maps_dfs (bug 28937) 2022-09-20 11:00:42 +02:00
dl-static-tls.h
dl-support.c elf: Remove -fno-tree-loop-distribute-patterns usage on dl-support 2022-10-10 10:32:28 -03:00
dl-sym-post.h
dl-sym.c
dl-symaddr.c
dl-sysdep-open.h
dl-sysdep.c
dl-thread_gscope_wait.c
dl-tls_init_tp.c
dl-tls.c
dl-trampoline.c
dl-tunable-types.h
dl-tunables.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
dl-tunables.h
dl-tunables.list
dl-unmap-segments.h
dl-usage.c elf: Simplify output of hwcap subdirectories in ld.so help 2022-10-06 07:59:48 -03:00
dl-version.c
dl-write.c
dl-writev.h
do-rel.h
dso-sort-tests-1.def elf: Implement force_first handling in _dl_sort_maps_dfs (bug 28937) 2022-09-20 11:00:42 +02:00
dso-sort-tests-2.def
dynamic-link.h
elf.h ARC: update definitions in elf/elf.h 2022-11-29 14:33:56 -08:00
enbl-secure.c
failobj.c
filter.c
filtmod1.c
filtmod2.c
firstobj.c
gen-trusted-dirs.awk
genrtldtbl.awk
get-dynamic-info.h
global.c
globalmod1.c
ifuncdep1.c
ifuncdep1pic.c
ifuncdep2.c
ifuncdep2pic.c
ifuncdep5.c
ifuncdep5pic.c
ifuncmain1.c elf: Disable some subtests of ifuncmain1, ifuncmain5 for !PIE 2022-11-04 18:46:22 +01:00
ifuncmain1pic.c
ifuncmain1picstatic.c
ifuncmain1pie.c
ifuncmain1static.c
ifuncmain1staticpic.c
ifuncmain1staticpie.c
ifuncmain1vis.c
ifuncmain1vispic.c
ifuncmain1vispie.c
ifuncmain2.c
ifuncmain2pic.c
ifuncmain2picstatic.c
ifuncmain2static.c
ifuncmain3.c
ifuncmain4.c
ifuncmain4picstatic.c
ifuncmain4static.c
ifuncmain5.c elf: Disable some subtests of ifuncmain1, ifuncmain5 for !PIE 2022-11-04 18:46:22 +01:00
ifuncmain5pic.c
ifuncmain5picstatic.c
ifuncmain5pie.c
ifuncmain5static.c
ifuncmain5staticpic.c
ifuncmain6pie.c
ifuncmain7.c
ifuncmain7pic.c
ifuncmain7picstatic.c
ifuncmain7pie.c
ifuncmain7static.c
ifuncmain9.c
ifuncmain9pic.c
ifuncmain9picstatic.c
ifuncmain9pie.c
ifuncmain9static.c
ifuncmod1.c
ifuncmod3.c
ifuncmod5.c
ifuncmod6.c
initfirst.c
interp.c
lateglobal.c
ldconfig.c elf: Remove hwcap parameter from add_to_cache signature 2022-10-06 07:59:48 -03:00
ldd.bash.in
libc_early_init.c
libc-dl_find_object.c
libc-early-init.h
libtracemod1-1.c
libtracemod2-1.c
libtracemod3-1.c
libtracemod4-1.c
libtracemod5-1.c
link.h
loadfail.c
loadtest.c
ltglobmod1.c
ltglobmod2.c
Makefile elf: Rework exception handling in the dynamic loader [BZ #25486] 2022-11-03 09:39:31 +01:00
markermodMARKER-VALUE.c
multiload.c
neededobj1.c
neededobj2.c
neededobj3.c
neededobj4.c
neededobj5.c
neededobj6.c
neededtest2.c
neededtest3.c
neededtest4.c
neededtest.c
next.c
nextmod1.c
nextmod2.c
nextmod3.c
nextmod3.map
nodel2mod1.c
nodel2mod2.c
nodel2mod3.c
nodelete2.c
nodelete.c
nodelmod1.c
nodelmod2.c
nodelmod3.c
nodelmod4.c
nodlopen2.c
nodlopen.c
nodlopenmod2.c
nodlopenmod.c
noload.c
order2.c
order2mod1.c
order2mod2.c
order2mod3.c
order2mod4.c
order.c
origtest.c
pathoptobj.c
pldd-xx.c
pldd.c
preloadtest.c
readelflib.c
readlib.c
reldep2.c
reldep3.c
reldep4.c
reldep4mod1.c
reldep4mod2.c
reldep4mod3.c
reldep4mod4.c
reldep5.c
reldep6.c
reldep6mod0.c
reldep6mod1.c
reldep6mod2.c
reldep6mod3.c
reldep6mod4.c
reldep7.c
reldep7mod1.c
reldep7mod2.c
reldep8.c
reldep8mod1.c
reldep8mod2.c
reldep8mod3.c
reldep9.c
reldep9mod1.c
reldep9mod2.c
reldep9mod3.c
reldep.c
reldepmod1.c
reldepmod2.c
reldepmod3.c
reldepmod4.c
reldepmod5.c
reldepmod6.c
resolvfail.c
restest1.c
restest2.c
rtld_static_init.c
rtld-debugger-interface.txt
rtld-Rules
rtld.c elf: Introduce <dl-call_tls_init_tp.h> and call_tls_init_tp (bug 29249) 2022-11-03 17:28:03 +01:00
setup-vdso.h
simple-dl-hash.h
simple-dl-new-hash.h
sln.c
sofini.c
sotruss-lib.c
sotruss.sh
sprof.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
static-stubs.c
stringtable_free.c
stringtable.c
stringtable.h
testobj1_1.c
testobj1.c
testobj2.c
testobj3.c
testobj4.c
testobj5.c
testobj6.c
testobj.h
tlsdeschtab.h elf/tlsdeschtab.h: Add the Malloc return value check in _dl_make_tlsdesc_dynamic() 2022-11-07 13:13:07 +00:00
tst-_dl_addr_inside_object.c
tst-absolute-sym-lib.c
tst-absolute-sym-lib.lds
tst-absolute-sym.c
tst-absolute-zero-lib.c
tst-absolute-zero-lib.lds
tst-absolute-zero.c
tst-addr1.c
tst-align2.c
tst-align3.c
tst-align.c
tst-alignmod2.c
tst-alignmod3.c
tst-alignmod.c
tst-array1-static.c
tst-array1.c
tst-array1.exp
tst-array2.c
tst-array2.exp
tst-array2dep.c
tst-array3.c
tst-array4.c
tst-array4.exp
tst-array5-static.c
tst-array5-static.exp
tst-array5.c
tst-array5.exp
tst-array5dep.c
tst-audit1.c
tst-audit2.c
tst-audit8.c
tst-audit9.c
tst-audit11.c
tst-audit11mod1.c
tst-audit11mod2.c
tst-audit11mod2.map
tst-audit12.c
tst-audit12mod1.c
tst-audit12mod2.c
tst-audit12mod2.map
tst-audit12mod3.c
tst-audit13.c
tst-audit13mod1.c
tst-audit14.c
tst-audit14.exp
tst-audit14a.c
tst-audit15.c
tst-audit15.exp
tst-audit16.c
tst-audit16.exp
tst-audit17.c
tst-audit18.c
tst-audit18mod.c
tst-audit19a.c
tst-audit19b.c
tst-audit19bmod.c
tst-audit20.c
tst-audit21.c
tst-audit22.c
tst-audit23.c
tst-audit23mod.c
tst-audit24a.c
tst-audit24amod1.c
tst-audit24amod2.c
tst-audit24b.c
tst-audit24bmod1.c
tst-audit24bmod2.c
tst-audit24c.c
tst-audit24d.c
tst-audit24dmod1.c
tst-audit24dmod2.c
tst-audit24dmod3.c
tst-audit24dmod4.c
tst-audit25.h elf: Do not assume symbol order on tst-audit25{a,b} 2022-12-12 09:53:20 -03:00
tst-audit25a.c elf: Do not assume symbol order on tst-audit25{a,b} 2022-12-12 09:53:20 -03:00
tst-audit25b.c elf: Do not assume symbol order on tst-audit25{a,b} 2022-12-12 09:53:20 -03:00
tst-audit25mod1.c
tst-audit25mod2.c
tst-audit25mod3.c
tst-audit25mod4.c
tst-audit28.c
tst-audit-tlsdesc-dlopen.c
tst-audit-tlsdesc-mod1.c
tst-audit-tlsdesc-mod2.c
tst-audit-tlsdesc.c
tst-auditlogmod-1.c
tst-auditlogmod-2.c
tst-auditlogmod-3.c
tst-auditmany.c
tst-auditmanymod1.c
tst-auditmanymod2.c
tst-auditmanymod3.c
tst-auditmanymod4.c
tst-auditmanymod5.c
tst-auditmanymod6.c
tst-auditmanymod7.c
tst-auditmanymod8.c
tst-auditmanymod9.c
tst-auditmanymod.h
tst-auditmod1.c
tst-auditmod9a.c
tst-auditmod9b.c
tst-auditmod11.c
tst-auditmod12.c
tst-auditmod17.c
tst-auditmod18.c
tst-auditmod19a.c
tst-auditmod19b.c
tst-auditmod20.c
tst-auditmod21a.c
tst-auditmod21b.c
tst-auditmod22.c
tst-auditmod23.c
tst-auditmod24.h
tst-auditmod24a.c
tst-auditmod24b.c
tst-auditmod24c.c
tst-auditmod24d.c
tst-auditmod25.c
tst-auditmod28.c
tst-auditmod-tlsdesc.c
tst-auxobj-dlopen.c
tst-auxobj.c
tst-auxv.c
tst-auxvalmod.c
tst-big-note-lib.S
tst-big-note.c
tst-create_format1.c
tst-debug1.c
tst-deep1.c
tst-deep1mod1.c
tst-deep1mod2.c
tst-deep1mod3.c
tst-dl_find_object-mod1.c
tst-dl_find_object-mod2.c
tst-dl_find_object-mod3.c
tst-dl_find_object-mod4.c
tst-dl_find_object-mod5.c
tst-dl_find_object-mod6.c
tst-dl_find_object-mod7.c
tst-dl_find_object-mod8.c
tst-dl_find_object-mod9.c
tst-dl_find_object-static.c
tst-dl_find_object-threads.c
tst-dl_find_object.c
tst-dl-hash.c
tst-dl-hwcaps_split.c
tst-dl-is_dso.c
tst-dl-iter-static.c
tst-dlmodcount.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
tst-dlmopen1.c
tst-dlmopen1mod.c
tst-dlmopen2.c
tst-dlmopen3.c
tst-dlmopen4.c
tst-dlmopen-dlerror-mod.c
tst-dlmopen-dlerror.c
tst-dlmopen-gethostbyname-mod.c
tst-dlmopen-gethostbyname.c
tst-dlmopen-twice-mod1.c
tst-dlmopen-twice-mod2.c
tst-dlmopen-twice.c Fix elf/tst-dlmopen-twice not to exhaust static TLS 2022-10-28 18:43:58 +01:00
tst-dlopen-nodelete-reloc-mod1.c
tst-dlopen-nodelete-reloc-mod2.c
tst-dlopen-nodelete-reloc-mod3.c
tst-dlopen-nodelete-reloc-mod4.c
tst-dlopen-nodelete-reloc-mod5.c
tst-dlopen-nodelete-reloc-mod6.cc
tst-dlopen-nodelete-reloc-mod7.cc
tst-dlopen-nodelete-reloc-mod8.c
tst-dlopen-nodelete-reloc-mod9.cc
tst-dlopen-nodelete-reloc-mod10.c
tst-dlopen-nodelete-reloc-mod11.cc
tst-dlopen-nodelete-reloc-mod12.cc
tst-dlopen-nodelete-reloc-mod13.cc
tst-dlopen-nodelete-reloc-mod13.h
tst-dlopen-nodelete-reloc-mod14.cc
tst-dlopen-nodelete-reloc-mod15.cc
tst-dlopen-nodelete-reloc-mod16.c
tst-dlopen-nodelete-reloc-mod17.c
tst-dlopen-nodelete-reloc.c
tst-dlopen-nodelete-reloc.h
tst-dlopen-pie.c
tst-dlopen-self-container.c
tst-dlopen-self-pie.c
tst-dlopen-self.c
tst-dlopen-tlsmodid-container.c
tst-dlopen-tlsmodid-pie.c
tst-dlopen-tlsmodid.c
tst-dlopen-tlsmodid.h
tst-dlopenfail-2.c
tst-dlopenfail.c
tst-dlopenfaillinkmod.c
tst-dlopenfailmod1.c
tst-dlopenfailmod2.c
tst-dlopenfailmod3.c
tst-dlopenfailnodelmod.c
tst-dlopenrpath.c
tst-dlopenrpathmod.c
tst-dlsym-error.c
tst-dst-static.c
tst-env-setuid-tunables.c
tst-env-setuid.c
tst-execstack-mod.c
tst-execstack-needed.c
tst-execstack-prog.c
tst-execstack.c
tst-filterobj-aux.c
tst-filterobj-dlopen.c
tst-filterobj-filtee.c
tst-filterobj-filtee.h
tst-filterobj-flt.c
tst-filterobj.c
tst-finilazyfailmod.c
tst-getauxval-static.c
tst-glibc-hwcaps-2-cache.c
tst-glibc-hwcaps-2-cache.script
tst-glibc-hwcaps-cache.c
tst-glibc-hwcaps-cache.script
tst-glibc-hwcaps-mask.c
tst-glibc-hwcaps-prepend-cache.c
tst-glibc-hwcaps-prepend.c
tst-glibc-hwcaps.c
tst-glibcelf.py elf: Extract glibcelf constants from <elf.h> 2022-09-22 12:10:41 +02:00
tst-global1.c
tst-global2.c
tst-globalmod2.c
tst-gnu2-tls1.c
tst-gnu2-tls1mod.c
tst-ifunc-fault-bindnow.c
tst-ifunc-fault-lazy.c
tst-ifunc-textrel.c
tst-initfinilazyfail.c
tst-initlazyfailmod.c
tst-initorder2.c
tst-initorder2.exp
tst-initorder.c
tst-initorder.exp
tst-initordera1.c
tst-initordera2.c
tst-initordera3.c
tst-initordera4.c
tst-initorderb1.c
tst-initorderb2.c
tst-latepthread.c
tst-latepthreadmod.c
tst-ldconfig-bad-aux-cache.c
tst-ldconfig-ld_so_conf-update.c
tst-ldconfig-ld-mod.c
tst-ldconfig-X.sh
tst-leaks1.c
tst-linkall-static.c
tst-main1.c
tst-main1mod.c
tst-next-ver.c
tst-nodelete2.c
tst-nodelete2mod.c
tst-nodelete-dlclose-dso.c
tst-nodelete-dlclose-plugin.c
tst-nodelete-dlclose.c
tst-nodelete-opened-lib.c
tst-nodelete-opened.c
tst-nodelete-rtldmod.cc
tst-nodelete-uniquemod.cc
tst-nodelete-zmod.cc
tst-nodelete.cc
tst-noload.c
tst-null-argv-lib.c
tst-null-argv.c
tst-order-a1.c
tst-order-a2.c
tst-order-a3.c
tst-order-a4.c
tst-order-b1.c
tst-order-b2.c
tst-order-main.c
tst-p_align1.c
tst-p_align2.c
tst-p_align3.c
tst-p_align3.sh
tst-p_align.h
tst-p_alignmod3.c
tst-p_alignmod-base.c
tst-pathopt.c
tst-pathopt.sh
tst-pie1.c
tst-pie2.c
tst-piemod1.c
tst-pldd.c
tst-preload-pthread-libc.c
tst-protected1a.c
tst-protected1b.c
tst-protected1mod.h
tst-protected1moda.c
tst-protected1modb.c
tst-ptrguard1-static.c
tst-ptrguard1.c
tst-relr2.c
tst-relr3.c
tst-relr4.c
tst-relr-mod2.c
tst-relr-mod3a.c
tst-relr-mod3b.c
tst-relr-mod4a.c
tst-relr-mod4b.c
tst-relr-mod4b.map
tst-relr-pie.c
tst-relr.c
tst-relro-symbols.py elf: Fix tst-relro-symbols.py argument passing 2022-12-15 16:59:13 -03:00
tst-relsort1.c
tst-relsort1mod1.c
tst-relsort1mod2.c
tst-ro-dynamic-mod.c
tst-ro-dynamic-mod.map
tst-ro-dynamic.c
tst-rtld-argv0.sh
tst-rtld-list-tunables.exp
tst-rtld-list-tunables.sh
tst-rtld-load-self.sh
tst-rtld-preload.sh
tst-rtld-run-static.c
tst-single_threaded-mod1.c
tst-single_threaded-mod2.c
tst-single_threaded-mod3.c
tst-single_threaded-mod4.c
tst-single_threaded-pthread-static.c
tst-single_threaded-pthread.c
tst-single_threaded-static-dlopen.c
tst-single_threaded-static.c
tst-single_threaded.c
tst-sonamemove-dlopen.c
tst-sonamemove-link.c
tst-sonamemove-linkmod1.c
tst-sonamemove-linkmod1.map
tst-sonamemove-runmod1.c
tst-sonamemove-runmod1.map
tst-sonamemove-runmod2.c
tst-sonamemove-runmod2.map
tst-stackguard1-static.c
tst-stackguard1.c
tst-stringtable.c
tst-thrlock.c
tst-tls1-static-non-pie.c
tst-tls1-static.c
tst-tls1.c
tst-tls2-static.c
tst-tls3.c
tst-tls4.c
tst-tls5.c
tst-tls6.c
tst-tls7.c
tst-tls8.c
tst-tls9-static.c
tst-tls9.c
tst-tls10.c
tst-tls10.h
tst-tls11.c
tst-tls12.c
tst-tls13.c
tst-tls14.c
tst-tls15.c
tst-tls16.c
tst-tls17.c
tst-tls18.c
tst-tls19.c
tst-tls19mod1.c
tst-tls19mod2.c
tst-tls19mod3.c
tst-tls20.c Fix off-by-one OOB read in elf/tst-tls20 2022-10-28 11:16:51 +01:00
tst-tls20mod-bad.c
tst-tls21.c
tst-tls21mod.c
tst-tls-allocation-failure-static.c
tst-tls-dlinfo.c Use '%z' instead of '%Z' on printf functions 2022-09-22 08:48:04 -03:00
tst-tls-ie-dlmopen.c
tst-tls-ie-mod0.c
tst-tls-ie-mod1.c
tst-tls-ie-mod2.c
tst-tls-ie-mod3.c
tst-tls-ie-mod4.c
tst-tls-ie-mod5.c
tst-tls-ie-mod6.c
tst-tls-ie-mod.h
tst-tls-ie.c
tst-tls-manydynamic.c
tst-tls-manydynamic.h
tst-tls-manydynamicmod.c
tst-tls-surplus.c
tst-tlsalign-extern-static.c
tst-tlsalign-extern.c
tst-tlsalign-lib.c
tst-tlsalign-static.c
tst-tlsalign-vars.c
tst-tlsalign.c
tst-tlsmod1.c
tst-tlsmod2.c
tst-tlsmod3.c
tst-tlsmod4.c
tst-tlsmod5.c
tst-tlsmod6.c
tst-tlsmod7.c
tst-tlsmod8.c
tst-tlsmod9.c
tst-tlsmod10.c
tst-tlsmod11.c
tst-tlsmod12.c
tst-tlsmod13.c
tst-tlsmod13a.c
tst-tlsmod14a.c
tst-tlsmod14b.c
tst-tlsmod15a.c
tst-tlsmod15b.c
tst-tlsmod16a.c
tst-tlsmod16b.c
tst-tlsmod17a.c
tst-tlsmod17b.c
tst-tlsmod18a.c
tst-trace1.exp
tst-trace2.exp
tst-trace3.exp
tst-trace4.exp
tst-trace5.exp
tst-unique1.c
tst-unique1mod1.c
tst-unique1mod2.c
tst-unique2.c
tst-unique2mod1.c
tst-unique2mod2.c
tst-unique3.cc
tst-unique3.h
tst-unique3lib2.cc
tst-unique3lib.cc
tst-unique4.cc
tst-unique4.h
tst-unique4lib.cc
tst-unwind-ctor-lib.c
tst-unwind-ctor.c
tst-unwind-main.c
tst-valgrind-smoke.sh
unload2.c
unload2dep.c
unload2mod.c
unload3.c
unload3mod1.c
unload3mod2.c
unload3mod3.c
unload3mod4.c
unload4.c
unload4mod1.c
unload4mod2.c
unload4mod3.c
unload4mod4.c
unload5.c
unload6.c
unload6mod1.c
unload6mod2.c
unload6mod3.c
unload7.c
unload7mod1.c
unload7mod2.c
unload8.c
unload8mod1.c
unload8mod1x.c
unload8mod2.c
unload8mod3.c
unload.c
unloadmod.c
valgrind-test.c
Versions elf: Rework exception handling in the dynamic loader [BZ #25486] 2022-11-03 09:39:31 +01:00
vismain.c
vismod1.c
vismod2.c
vismod3.c
vismod.h