merge -r 54590:54591
[mono.git] / support / ChangeLog
1 2005-11-07  Jonathan Pryor  <jonpryor@vt.edu>
2
3         * map-icalls.h: Oddly, this file didn't get the new functions added in
4           2005-10-14 -- ToConfstrName, FromConfstrName, etc.  Add them.
5         * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
6
7 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
8
9         * signal.c: Don't build Syscall wrappers on Win32.
10
11 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
12
13         * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
14         * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
15           return `void' so that they instead: (1) return `int', (2) clear errno
16           before calling the real function, and (3) return -1 if errno changed.
17           This must be done in native code because calling 
18           Stdlib.SetLastError/Syscall.xxx
19           from managed code won't work reliably (since errno may change between the
20           SetLastError call and the actual Syscall invocation).
21         * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3), 
22           and confstr(3) callers to explicitly choose their own errno value.
23         * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
24           (e.g. ConfStr --> ConfstrName, etc.).  This is so that they follow the
25           established naming conventions.
26         * map-icalls.h: Add new icalls.
27         * syslog.c: Added; wraps <syslog.h> functions.
28
29 2005-10-06  Jonathan Pryor  <jonpryor@vt.edu>
30
31         * Makefile.am (MPH_C_SOURCE): Add string.c.
32         * string.c: Added; exports strlen(3) wrapper.
33         * map-icalls.h: Prototype for strlen(3) wrapper.
34
35 2005-09-29  Miguel de Icaza  <miguel@novell.com>
36
37         * support-heap.c: Add meat to the Heap routines. 
38
39 2005-09-20  Jonathan Pryor  <jonpryor@vt.edu>
40
41         * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
42         * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,  
43           and MmapProts.  Huge re-ordering because of namespace change in managed
44           code (not relevant to C API), and make-map.exe now outputs types/members
45           in alphabetical order (to avoid major code churn in the future).
46
47 2005-07-12  Daniel Drake  <dsd@gentoo.org>
48
49         * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
50         glibc 2.2)
51         * Makefile.am: Link to libattr if libc does not provide the xattr
52         syscalls.
53
54 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
55
56         *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
57
58 2005-07-01  Daniel Drake  <dsd@gentoo.org>
59
60         * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
61           to provide transparency between Linux and FreeBSD EA's.
62         * map-icalls.h: Update as above
63
64 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
65
66         * supportw.c: HeapDestroy.
67         * Makefile.am: don't build supportw on windows.
68
69 2005-06-29  Ben Maurer  <bmaurer@ximian.com>
70
71         * Makefile.am: namespace our library.
72
73 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
74
75         * supportw.c:
76         * supportw.h:
77         * Makefile.am: new library intended to provide often P/Invoked windows
78         API functions not present in io-layer.
79
80 2005-06-29  Jonathan Pryor  <jonpryor@vt.edu>
81
82         * map.c: Handle Syslog-related changes (SyslogFacility isn't a 
83           [Flags] enum); make-map.exe changes.
84
85 2005-06-28  Jonathan Pryor  <jonpryor@vt.edu>
86
87         * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
88           enum; change in order between LOG_USER and LOG_USRE).
89
90 2005-06-27  Jonathan Pryor  <jonpryor@vt.edu>
91
92         * map.c, map.h: Add corrected spelling of LOG_USER.
93
94 2005-06-13  Miguel de Icaza  <miguel@novell.com>
95
96         *  sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
97         not f_flag. 
98
99 2005-06-08  Jonathan Pryor  <jonpryor@vt.edu>
100
101         * Makefile.am: Create an unversioned library.  We won't make any gaurantees
102           about ABI stability until Mono 1.2 (if then).
103
104 2005-06-07  Jonathan Pryor  <jonpryor@vt.edu>
105
106         * sys-mman.c: Check for presence of mremap and remap_file_pages.
107
108 2005-06-05  Jonathan Pryor  <jonpryor@vt.edu>
109
110         * map-icalls.h, map.h: Change header comment so it matches what 
111           `make refresh` generates.
112         * map.c: Add <sys/xattr.h> header.
113
114 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
115
116         * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
117           munlock, mremap, mincore, remap_file_pages.
118         * map-icalls.h: Update to latest shared interface.
119         * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
120           MlockallFlags, MremapFlags.
121         * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
122
123 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
124
125         * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
126
127 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
128
129         * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
130
131 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
132
133         * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
134
135 2005-05-18  Jonathan Pryor  <jonpryor@vt.edu>
136
137         * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
138           declarations for DllImport functions in Mono.Posix.dll.  This ensure
139           consistency between Mono.Posix.dll and MonoPosixHelper.so.
140         * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
141           exports have correct prototypes.
142         * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c, 
143           sys-time.c, utime.c: Correct prototypes to match map-icalls.h.  Alas, this
144           "loses" information -- FILE* becomes void*, etc. -- but no semantics or
145           ABI should be changed (except for Mono_Posix_Syscall_utime).  Some
146           structure names also changed to match the generated names; since the
147           structures are private, this shouldn't break anything.
148         * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
149           about a missing prototype.  This was never in a stable release.
150         * old-map.c: Include mph.h for prototype checking.
151         * unistd.c: SeekFlags conversion is now done in managed code so that a short
152           isn't passed as a parameter; Correct prototypes to match map-icalls.h.
153         * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to 
154           match map-icalls.h.
155         * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
156         * sys-wait.c: Include mph.h so that prototypes are checked.
157
158 2005-05-16  Jonathan Pryor  <jonpryor@vt.edu>
159
160         * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
161         * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
162           does something useful.
163
164 2005-05-12  Jonathan Pryor  <jonpryor@vt.edu>
165
166         * map.c, map.h: Add FromMountFlags, ToMountFlags.  (MountFlags is used in
167           `struct statvfs', which is POSIX).
168         * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
169           managed equivalent.
170
171 2005-05-03  Geoff Norton  <gnorton@customerdna.com>
172
173         * sys-xattr.c:  Mac OS/X Tiger supports xattr but has a different API for supporting
174         resource forks.  Allow mono to build on Tiger.
175
176 2005-04-30  Jonathan Pryor  <jonpryor@vt.edu>
177
178         * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
179           "dump" of a fpos_t.  This is used for Mono.Unix.FilePosition.ToString().
180
181 2005-04-19  Jonathan Pryor  <jonpryor@vt.edu>
182
183         * map.c, map.h: Added XattrFlags values, functions.
184         * sys-xattr.c: Added; <sys/xattr.h> wrapper functions.  Thanks to Daniel
185           Drake for writing these.
186         * Makefile.am: Add sys-xattr.c to the build.
187
188 2005-04-07  Jonathan Pryor  <jonpryor@vt.edu>
189
190         * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
191           (otherwise assume existence of XPG variant).  This allows proper
192           compilation under Red Hat 9.
193         * fstab.c: protect against users calling setfsent(), setfsent(), ...  
194           endfsent(), which would otherwise leak a FILE handle.
195
196 2005-04-05  Zoltan Varga  <vargaz@freemail.hu>
197
198         * mph.h: Apply patch from the freebsd ports collection.
199
200 2005-02-10  Zoltan Varga  <vargaz@freemail.hu>
201
202         * zlib_macros.c (create_z_stream): Explicitly check for older versions
203         of zlib.
204
205 2005-02-08  Zoltan Varga  <vargaz@freemail.hu>
206
207         * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
208
209 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
210
211         * grp.c: Oops.  Didn't see other Solaris fix in #72292.
212
213 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
214
215         * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
216           have a stale value, leading to spurious errors later.  Fixes #72292.
217
218 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
219
220         * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
221           on Windows as well as Unix.
222
223 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
224
225         * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall, 
226           since it's part of ANSI C (and errno will be used from StdioFileStream).  
227           Add Mono_Posix_Stdlib_SetLastError.  Don't remove the Syscall version, as 
228           we don't want to break Mono 1.1.4/svn users the day after release. :-)
229
230 2005-01-25  Jonathan Pryor  <jonpryor@vt.edu>
231
232         * macros.c: Use gint64, not long, to match C# declaration.  Fixes 71152.
233
234 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
235
236         * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
237
238 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
239
240         * map.h: Correct Mono_Posix_OpenFlags values (they should now match 
241           x86 linux); remove unused enumerations (MountFlags, etc.).
242
243 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
244
245         * fstab.c: Fix HPUX support.  HPUX includes both <fstab.h> and
246           <checkpoint.h>, so we need to give preference to <checkpoint.h>.
247
248 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
249
250         * fstab.c: Add support for HPUX, which uses <checklist.h>.
251
252 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
253
254         * map.c: Continuing my ineptitude...  <sys/wait.h> isn't on Win32.
255         * mph.h: Win32 doesn't define EOVERFLOW, either.  Define it.
256
257 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
258
259         * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
260
261 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
262
263         * map.c: Fix Win32 build break.  Win32 doesn't have all the sys/* headers.
264
265 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
266
267         * serial.c: HPUX compiler fix.
268         * stdlib.c: Add C-defined macro wrappers.
269
270 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
271
272         * stdio.c: Add wrapper for C99's snprintf(3).
273
274 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
275
276         * Makefile.am: Rewrite.  Remove configure-generated warnings about 
277           multiple _LIBADD and _SOURCES lines.  Add support for Win32.  
278           Win32 support is limited to ANSI C functions.
279         * stdio.c: Don't compile Unix wrappers on Win32.
280
281 2005-01-04  Raja R Harinath  <rharinath@novell.com>
282
283         * Makefile.am (LIBS): Remove.  Was overriding results of configure check.
284         (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
285
286 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
287
288         * Makefile.am: Add libnsl to LIBS.  Hopefully this will let sparc link.
289         * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
290
291 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
292
293         * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
294         * unistd.c: Check for presence of gethostname and sethostname.
295
296 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
297
298         * mph.h, x-struct-str.c: Add "const" to parameters to remove 
299           "warning: passing arg [2|4]...discards qualifiers" message.
300
301 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
302
303         * fstab.c: Remove some sparc compiler warnings.
304
305 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
306
307         * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
308           functionality in getvfsent(3C).  Implement Solaris support.
309
310 2005-01-02  Jonathan Pryor  <jonpryor@vt.edu>
311
312         * stdio.c: More wrapper functions.  I missed a few macros...  This should
313           complete all macro's defined in <stdio.h> for C99.
314
315 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
316
317         * stdio.c: More wrapper functions.  This should complete C89's <stdio.h>
318           requirements.
319
320 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
321
322         * sys-statvfs.c: Further proving that changing code without compiling is
323           dangerous business...  Compiler fix for OS X.
324
325 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
326
327         * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
328
329 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
330
331         * Makefile.am: Add signal.c to the build.
332         * signal.c: Added.  Contains helper functions to wrap signal(2).
333
334 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
335
336         * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
337           f_fsid isn't an integral type; fstatfs needs to use fpathconf).
338
339 2004-12-29  Jonathan Pryor  <jonpryor@vt.edu>
340
341         * unistd.c: Null-terminate the string returned by readlink(2).  This works
342           around a marshaler "issue".
343
344 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
345
346         * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
347           against glib-2.0 (to use g_assert()).
348
349 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
350
351         * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3), 
352           getfsspec(3).
353         * map.c: Add new conversion functions for SyslogOptions, SyslogFacility, 
354           SyslogLevel; see syslog(3) for details.
355         * map.h: Add new conversion functions and values for SyslogOptions, 
356           SyslogFacility, SyslogLevel; see syslog(3) for details.
357         * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
358         * mph.h: Document location for Mac OS X man page documentation; add
359           MPH_INTERNAL macro for intra-library function calls (for functions that
360           shouldn't be exported from libMonoPosixHelper.so); declare
361           _mph_copy_structure_strings().
362         * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
363           struct passwd.
364         * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
365           fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
366           of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
367         * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
368           generalized interface to copy strings between structures (as is needed in
369           pwd.c and fstab.c).
370
371 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
372
373         * serial.c: remove mono calls from here: they break the build
374         and they don't belong here.
375
376 2004-12-21  Chris Toshok  <toshok@ximian.com>
377
378         * serial.c: initial import of System.IO.Ports pinvoke stuff.
379
380         * Makefile.am (MPH_SOURCE): add serial.c.
381
382 2004-11-30  Jonathan Pryor  <jonpryor@vt.edu>
383
384         * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
385           <glib/gutils.h> to handle the `inline' keyword.
386
387 2004-11-27  Miguel de Icaza  <miguel@ximian.com>
388
389         * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
390         the old API (currently the old API would fail).
391
392 2004-11-25  Raja R Harinath  <rharinath@novell.com>
393
394         * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
395
396 2004-11-18  Jonathan Pryor  <jonpryor@vt.edu>
397
398         * stdio.c: Add fread(3) and fwrite(3) wrappers.
399
400 2004-11-16  Jonathan Pryor  <jonpryor@vt.edu>
401
402         * Makefile.am: Remove sys-mount.c from the build.
403         * sys-mount.c: Delete.  We're not exporting mount-related functionality
404           anymore.  It's not remotely portable, and trying to make it portable is a
405           doomed idea.
406         * map.c: Remove mount- and umount-related conversion functions.
407
408 2004-11-14  Geoff Norton  <gnorton@customerdna.com>
409         
410         * mph.h:  Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
411         and unistd.c still check this configuration value.  This allows mono
412         to build on *BSD again.
413
414 2004-11-12  Jonathan Pryor <jonpryor@vt.edu>
415
416         * dirent.c: Only access members which exist on the target
417           platform.
418         * errno.c: Only export strerror_r if it's available.
419         * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
420         * sys-mman.c: Only export posix_madvise if it's available.
421         * unistd.c: Only export sethostid if it's available.
422
423 2004-11-08  Jonathan Pryor <jonpryor@vt.edu>
424
425         * Makefile.am: Add sys-sendfile.c to the build.
426         * dirent.c, fcntl.c, unistd.c: Remove
427           compile-time checks for -64 apis (pread64, etc.), as they're
428           superfluous.  GLibc #defines the functions to the appropriate
429           -64 counterpart when necessary, and Darwin is intrinsically
430           large-file-aware, so manual checking on my part is redundant and
431           unnecessary.
432         * grp.c: Add checks for non-portable functions getgrnam_r,
433           getgrgid_r.
434         * pwd.c: Add checks for non-portable functions getpwnam_r,
435           getpwuid_r.
436         * map.c: Remove <poll.h> include.  Building on Tiger (Mac
437           OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
438           included, so only use <sys/poll.h>.
439         * mph.h: Clean up macro handling for type overflow checking.
440
441 2004-11-05  Jonathan Pryor <jonpryor@vt.edu>
442
443         * .cvsignore: Ignore generated files.
444         * Makefile.am: Add new INCLUDE directives (for glib
445           headers), source; bump library version (so we don't clobber
446           previous versions of libMonoPosixHelper.so).
447         * dirent.c: New file; <dirent.h> wrapper functions; 
448           BSD portability fixes.
449         * errno.c: New file; <errno.h> wrapper functions
450         * fcntl.c: New file; <fcntl.h> wrapper functions;
451           BSD portability fixes.
452         * grp.c: New file; <grp.h> wrapper functions;
453           BSD portability fixes.
454         * map.c: Updated macro mapping functions (more enums
455           mapped, more error checking, etc.).
456         * map.h: Updated macro mapping functions
457         * old-map.c: Previous map.c implementation, for backward
458           compatibility Remove spurious warning about redefining
459           _GNU_SOURCE.
460         * old-map.h: Previous map.h implementation, for backward
461         compatibility
462         * mph.h: New file; Utility types, macros;
463           BSD portability fixes.
464         * pwd.c: New file; <pwd.h> wrapper functions;
465           BSD portability fixes.
466         * stdio.c: New file; <stdio.h> wrapper functions
467         * stdlib.c: New file; <stdlib.h> wrapper functions
468         * sys-mman.c: New file; <sys/mman.h> wrapper functions
469         * sys-mount.c: New file; <sys/mount.h> wrapper functions;
470           BSD portability fixes.
471         * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
472           functions; BSD portability fixes.
473         * sys-stat.c: New file; <sys/stat.h> wrapper functions
474         * sys-wait.c: New file; <sys/wait.h> wrapper functions
475         * time.c: New file; <time.h> wrapper functions;
476           BSD portability fixes.
477         * unistd.c: New file; <unistd.h> wrapper functions;
478           BSD portability fixes.
479