lib/vma-iter.h


Log

Author Commit Date CI Message
Bruno Haible 44b65c48 2018-05-03T23:09:42 Simplify code. Drop support for Borland C++ on Windows. Reported by Gisle Vanem <gisle.vanem@gmail.com>. * lib/accept4.c: Simplify 'defined _WIN32 || defined __WIN32__' to just 'defined _WIN32'. * lib/canonicalize-lgpl.c: Likewise. * lib/classpath.c: Likewise. * lib/clean-temp.c: Likewise. * lib/csharpexec.c: Likewise. * lib/ctime.c: Likewise. * lib/dosname.h: Likewise. * lib/dup2.c: Likewise. * lib/errno.in.h: Likewise. * lib/error.c: Likewise. * lib/euidaccess.c: Likewise. * lib/execute.c: Likewise. * lib/fcntl.in.h: Likewise. * lib/fcntl.c: Likewise. * lib/filename.h: Likewise. * lib/findprog.c: Likewise. * lib/flock.c: Likewise. * lib/fopen.c: Likewise. * lib/freopen.c: Likewise. * lib/fstat.c: Likewise. * lib/fsync.c: Likewise. * lib/gc-gnulib.c: Likewise. * lib/get-rusage-data.c: Likewise. * lib/getaddrinfo.c: Likewise. * lib/getdelim.c: Likewise. * lib/getdtablesize.c: Likewise. * lib/gethostname.c: Likewise. * lib/getlogin.c: Likewise. * lib/getlogin_r.c: Likewise. * lib/getopt.c: Likewise. * lib/getpagesize.c: Likewise. * lib/getpass.c: Likewise. * lib/getrusage.c: Likewise. * lib/gettimeofday.c: Likewise. * lib/glob.c: Likewise. * lib/inttypes.in.h: Likewise. * lib/isapipe.c: Likewise. * lib/javaexec.c: Likewise. * lib/link.c: Likewise. * lib/localcharset.c: Likewise. * lib/localename.h: Likewise. * lib/localename.c: Likewise. * lib/localtime.c: Likewise. * lib/lseek.c: Likewise. * lib/mbsinit.c: Likewise. * lib/mkdir.c: Likewise. * lib/msvc-nothrow.h: Likewise. * lib/nanosleep.c: Likewise. * lib/nl_langinfo.c: Likewise. * lib/nonblocking.c: Likewise. * lib/nproc.c: Likewise. * lib/open.c: Likewise. * lib/openpty.c: Likewise. * lib/pathmax.h: Likewise. * lib/pipe-filter-aux.c: Likewise. * lib/pipe-filter-gi.c: Likewise. * lib/pipe-filter-ii.c: Likewise. * lib/pipe.c: Likewise. * lib/pipe2.c: Likewise. * lib/poll.c: Likewise. * lib/popen.c: Likewise. * lib/posix_openpt.c: Likewise. * lib/printf-parse.c: Likewise. * lib/progreloc.c: Likewise. * lib/putenv.c: Likewise. * lib/read.c: Likewise. * lib/relocatable.c: Likewise. * lib/rename.c: Likewise. * lib/same-inode.h: Likewise. * lib/secure_getenv.c: Likewise. * lib/select.c: Likewise. * lib/sethostname.c: Likewise. * lib/setlocale.c: Likewise. * lib/sigaction.c: Likewise. * lib/sigprocmask.c: Likewise. * lib/sleep.c: Likewise. * lib/spawn-pipe.h: Likewise. * lib/spawn-pipe.c: Likewise. * lib/spawni.c: Likewise. * lib/stat-time.h: Likewise. * lib/stat-w32.c: Likewise. * lib/stat.c: Likewise. * lib/stdio.in.h: Likewise. * lib/stdio-impl.h: Likewise. * lib/stdio-read.c: Likewise. * lib/stdio-write.c: Likewise. * lib/stdlib.in.h: Likewise. * lib/strerror_r.c: Likewise. * lib/strftime-fixes.c: Likewise. * lib/sys_stat.in.h: Likewise. * lib/sys_types.in.h: Likewise. * lib/sys_wait.in.h : Likewise. * lib/system-quote.h: Likewise. * lib/system-quote.c: Likewise. * lib/tmpdir.c: Likewise. * lib/tzset.c: Likewise. * lib/uname.c: Likewise. * lib/unistd.in.h: Likewise. * lib/utime.in.h: Likewise. * lib/utime.c: Likewise. * lib/utimecmp.c: Likewise. * lib/utimens.c: Likewise. * lib/vasnprintf.c: Likewise. * lib/vma-iter.h: Likewise. * lib/vma-iter.c: Likewise. * lib/wait-process.c: Likewise. * lib/wcsftime.c: Likewise. * lib/wctype.in.h: Likewise. * lib/write.c: Likewise. * tests/nap.h: Likewise. * tests/test-cloexec.c: Likewise. * tests/test-dup-safer.c: Likewise. * tests/test-dup2.c: Likewise. * tests/test-dup3.c: Likewise. * tests/test-fcntl.c: Likewise. * tests/test-get-rusage-data.c: Likewise. * tests/test-getaddrinfo.c: Likewise. * tests/test-getlogin.h: Likewise. * tests/test-isatty.c: Likewise. * tests/test-localename.c: Likewise. * tests/test-mbrtowc-w32.c: Likewise. * tests/test-nonblocking.c: Likewise. * tests/test-nonblocking-pipe-main.c: Likewise. * tests/test-nonblocking-socket-main.c: Likewise. * tests/test-nonblocking-socket.h: Likewise. * tests/test-pipe.c: Likewise. * tests/test-pipe2.c: Likewise. * tests/test-poll.c: Likewise. * tests/test-pthread_sigmask1.c: Likewise. * tests/test-select.h: Likewise. * tests/test-sethostname2.c: Likewise. * tests/test-sigprocmask.c: Likewise. * tests/test-spawn-pipe-child.c: Likewise. * tests/test-stat-time.c: Likewise. * tests/test-system-quote-main.c: Likewise. * tests/test-utimens-common.h: Likewise. * tests/test-wcrtomb-w32.c: Likewise. * m4/csharpexec.m4 (gt_CSHARPEXEC): Likewise. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Likewise. * m4/javacomp.m4 (gt_JAVACOMP): Likewise. * m4/javaexec.m4 (gt_JAVAEXEC): Likewise. * m4/locale-ar.m4 (gt_LOCALE_AR): Likewise. * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Likewise. * m4/locale-ja.m4 (gt_LOCALE_JA): Likewise. * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise. * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise. * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): Likewise. * m4/nocrash.m4 (GL_NOCRASH): Likewise. * m4/pathmax.m4 (gl_PATHMAX_SNIPPET): Likewise. * m4/ptsname_r.m4 (gl_PREREQ_PTSNAME_R): Likewise. * m4/stdio_h.m4 (gl_STDIO_H): Likewise. * m4/tmpfile.m4 (gl_FUNC_TMPFILE): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
Bruno Haible 51e57627 2018-01-30T09:02:46 vma-iter: Add support for Minix 3. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define on Minix. * lib/vma-iter.c: On Minix, read /proc/<pid>/map.
Paul Eggert 281b825e 2018-01-01T00:57:25 maint: Run 'make update-copyright'
Bruno Haible c97f3046 2017-10-01T19:36:22 vma-iter: Add support for GNU/Hurd. * lib/vma-iter.c: Treat GNU/Hurd like Linux. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on GNU/kFreeBSD.
Bruno Haible 26e27d9f 2017-09-30T18:16:03 vma-iter: Make it work on 32-bit Solaris with module 'largefile'. * modules/vma-iter: Don't test for sys/procfs.h, as this test would fail when module 'largefile' is in use. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Don't test HAVE_SYS_PROCFS_H. * lib/vma-iter.c: Undefine _FILE_OFFSET_BITS early. Don't test HAVE_SYS_PROCFS_H.
Bruno Haible 36ba2c05 2017-09-26T19:48:39 vma-iter: Improvements for Linux and BSD platforms. - Add support for DragonFly BSD. - Make it more reliable on Linux, GNU/kFreeBSD, FreeBSD, NetBSD. * lib/vma-iter.c (struct rofile, rof_open, rof_peekchar, rof_close): Read the entire file into memory in a single system call. (vma_iterate): Update. Read from /proc on DragonFly BSD like on FreeBSD. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on DragonFly BSD.
Bruno Haible ad8ece88 2017-09-25T21:31:25 vma-iter: Improvements for BSD platforms. - Add support for GNU/kFreeBSD. - Make it work on FreeBSD and NetBSD even when /proc is not mounted. - Speed up on OpenBSD. * lib/vma-iter.c (struct rofile, rof*): Define also on GNU/kFreeBSD. (vma_iterate_bsd): New function. (vma_iterate): Use it as fallback on FreeBSD and NetBSD. Use it as first choice on OpenBSD. Treat GNU/kFreeBSD like Linux. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on GNU/kFreeBSD. * modules/vma-iter (configure.ac): Require AC_C_INLINE.
Paul Eggert ca35d468 2017-09-13T00:48:18 all: prefer https: URLs
Bruno Haible 3a82bb79 2017-04-19T01:03:34 vma-iter: Fix conflict with module 'largefile' on 32-bit Solaris 9. * modules/vma-iter (configure.ac): Test whether <sys/procfs.h> can be included. * lib/vma-iter.c: On Solaris, test HAVE_SYS_PROCFS_H before including <sys/procfs.h>. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Don't define on Solaris when <sys/procfs.h> cannot be included. Reported by Tom G. Christensen <tgc@jupiterrise.com>.
Bruno Haible fef4a135 2017-03-19T15:45:26 vma-iter: Add support for Solaris. * lib/vma-iter.c (vma_iterate): On Solaris, use the /proc filesystem approach. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on Solaris. * lib/get-rusage-as.c: Update comment about Solaris. * lib/get-rusage-data.c: Likewise.
Bruno Haible bfd9640a 2017-03-19T14:19:07 vma-iter: Prefer HP-UX specific API on HP-UX. * lib/vma-iter.c (vma_iterate): Move HP-UX specific implementation up. * lib/vma-iter.h: Update. Just in case HP-UX ever implements mquery().
Bruno Haible c1a21de2 2017-03-15T22:07:56 vma-iter: Add support for HP-UX. * modules/vma-iter (configure.ac): Check for 'pstat_getprocvm'. * lib/vma-iter.c (vma_iterate): On HP-UX, use pstat_getprocvm(). * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on HP-UX. * lib/get-rusage-as.c: Update comment about HP-UX. * lib/get-rusage-data.c: Likewise. (get_rusage_data): Use get_rusage_data_via_setrlimit.
Bruno Haible 3e18c008 2017-03-10T18:08:18 vma-iter: Let callers know about error. * lib/vma-iter.h (vma_iterate): Return 'int', not 'void'. * lib/vma-iter.c (vma_iterate): Return -1 in case of error.
Paul Eggert a3fd683d 2017-01-01T02:59:23 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert 71090a2a 2016-01-01T00:56:19 version-etc: new year * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
Paul Eggert b9bfe784 2015-01-01T01:38:23 version-etc: new year * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
Eric Blake 1276a2c5 2014-01-01T00:04:40 maint: update copyright I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake 9fc81090 2013-01-01T00:50:58 maint: update all copyright year number ranges Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
Jim Meyering 1602f0af 2012-01-01T10:04:58 maint: update all copyright year number ranges Run "make update-copyright".
Bruno Haible c428797e 2011-01-27T11:42:45 vma-iter, get-rusage-as: Add OpenBSD support. * modules/vma-iter (configure.ac): Test for mquery. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on OpenBSD. * lib/vma-iter.c: Include <sys/mman.h>. (vma_iterate): Add an implementation based on mquery(). * lib/resource-ext.h (get_rusage_as): Update comments. * lib/get-rusage-as.c: Likewise. * lib/get-rusage-data.c: Likewise.
Bruno Haible 760b589b 2011-01-26T02:13:52 vma-iter: Treat Haiku like BeOS. * lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define on Haiku as well. * lib/vma-iter.c (vma_iterate) [Haiku]: Use the BeOS API.
Bruno Haible fe810bf8 2011-01-24T03:56:02 New module 'vma-iter'. * lib/vma-iter.h: New file. * lib/vma-iter.c: New file, based on lib/get-rusage-as.c. * modules/vma-iter: New file. * lib/get-rusage-as.c: Include vma-iter.h. Don't include system headers for get_rusage_as_via_iterator. (vma_iterate_callback): New function. (get_rusage_as_via_iterator): Rewritten to use vma_iterate. * modules/get-rusage-as (Depends-on): Add vma-iter.