* sys-time.c: Properly set the modification time, instead of using the
[mono.git] / support / ChangeLog
1 2009-04-13  Jonathan Pryor  <jpryor@novell.com>
2
3         * sys-time.c: Properly set the modification time, instead of using the
4           access time as the modification time.  Fixes #494253.
5
6 2009-03-20  Jonathan Pryor  <jpryor@novell.com>
7
8         * x-struct-str.c: It's possible for struct members to be NULL, so make 
9           sure we don't pass NULL to strlen(3).
10
11 2009-02-20  Jonathan Pryor  <jpryor@novell.com>
12
13         * map.h: Flush (adds Mono_Unix_UnixSignal_SignalInfo::pipecnt, removes
14           functions no longer declared within Mono.Posix.dll).
15         * signal.c: Allow Mono_Unix_UnixSignal_WaitAny() to be called 
16           concurrently from multiple threads w/o blocking each thread;
17           previously, calls to Mono_Unix_UnixSignal_WaitAny() would block
18           until the previous call completed.  This required restructuring
19           Mono_Unix_UnixSignal_SignalInfo to hold a ref-counted
20           read_fd/write_fd pair (instead of allocating & releasing within
21           _WaitAny()) so that the pipes could be "shared" between threads.
22           Patch thanks to tim.jenks@realtimeworlds.com.
23
24 2009-02-10  Jeffrey Stedfast  <fejj@novell.com>
25
26         * minizip/zip.c: Fix warnings about old-style paramater type
27         specifications.
28
29         * minizip/unzip.c Fix warnings about old-style paramater type
30         specifications.
31         (unzlocal_DosDateToTmuDate): Fix ambiguous else's.
32         (unzlocal_DosDateToTmuDate): Here too.
33         (unzlocal_CheckCurrentFileCoherencyHeader): And here.
34
35         * old-map.c: Added prototypes to silence compile warnings. Looks
36         like this file is supposed to be autogenerated, so probably not
37         the right fix but I can't find the autogen script.
38
39         * map.h (helper_Mono_Posix_getpwnamuid): Added a prototype for
40         this - it doesn't seem to be used anywhere in mono, so
41         maybe it can be removed but I'm not positive.
42         (map_Mono_Posix_PollEvents): Added prototype.
43         (map_Mono_Posix_Signals): Added prototype.
44
45         * macros.c: #include "map.h" to silence compile warnings about no
46         previous prototypes.
47
48 2009-02-09  Jeffrey Stedfast  <fejj@novell.com>
49
50         * supportw.c (SetWindowPos): Fixed compile warnings about
51         printf-style formatters.
52         (SendMessageA): Same.
53
54 2009-01-14  Geoff Norton  <gnorton@novell.com>
55
56         * supportw.c: Use unsigned int instead of uint, as its more portable.
57         Fixes compilation issue on Mac OSX.
58
59 2009-01-08  Rodrigo Kumpera  <rkumpera@novell.com>
60
61         * signal.c: Don't allow registration of a realtime signal to happen
62         if it was already registered outside of Mono.Posix.
63
64 2008-12-19  Jonathan Pryor  <jpryor@novell.com>
65
66         * signal.c: Improve error checking within Mono_Posix_FromRealTimeSignum.
67
68 2008-12-19  Jonathan Pryor  <jpryor@novell.com>
69
70         * map.h: Flush.
71         * signal.c: Add Mono_Posix_SIGRTMIN(), Mono_Posix_SIGRTMAX(),
72           Mono_Posix_FromRealTimeSignum().
73           Patch thanks to tim.jenks@realtimeworlds.com.
74
75 2008-11-06  Alan McGovern  <amcgovern@novell.com>
76
77         * Makefile.am: Missed out on a header file for minizip
78
79 2008-11-06  Alan McGovern  <amcgovern@novell.com>
80
81         * minizip/minizip/miniunz.c :
82         * Makefile.am: Removed unnecessary file from build and svn.
83
84 2008-11-06  Alan McGovern  <amcgovern@novell.com>
85
86         * minizip/*.am :
87         * Makefile.am: Merged minizip build into the support code.
88
89 2008-11-05  Bill Holmes  <billholmes54@gmail.com>
90
91         * Makefile.am : For generation of map.c adding preprocessor
92           checks for sys/time.h, unistd.h, dirent.h and utime.h.
93
94         * map.c : Re-run 'make refresh' to add preprocessor checks
95           for sys/time.h, unistd.h, dirent.h and utime.h.
96
97         Code is contributed under MIT/X11 license.
98
99 2008-10-15  Jonathan Pryor  <jpryor@novell.com>
100
101         * time.c: Add Mono_Posix_Syscall_nanosleep().
102
103 2008-10-15  Jonathan Pryor  <jpryor@novell.com>
104
105         * fcntl.c: Use Mono_Posix_{From,To}Flock() for flock conversion.
106         * Makefile.am: Include <time.h> in map.c.
107         * map.c, map.h: Flush; adds Flock, Timespec support.
108
109 2008-09-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
110
111         * serial.c: When writing bytes and polling, take into account negative
112         values to indicate infinite timeout. Patch by Leszek Ciesielski.
113         Fixes #399245.
114
115 2008-07-22  Zoltan Varga  <vargaz@gmail.com>
116
117         * Makefile.am (patch-libtool): New helper target.
118
119 2008-04-05  Carlos Alberto Cortez <calberto.cortez@gmail.com>
120
121         * serial.c (set_attributes): When setting parity to Even,
122         besides removing the PARODD bit, add the PARENB bit to actually
123         use even parity.
124         Patch by Leszek Ciesielski.
125         Fixes #365248.
126
127 2008-03-31  Miguel de Icaza  <miguel@novell.com>
128
129         * serial.c (write_serial): Avoid infinite loops, see #375580.
130
131 2008-02-12  Jonathan Pryor  <jpryor@novell.com>
132
133         * signal.c: SLES9 has glib 2.2, so we can't rely on g_atomic_int_*().
134           Provide a fallback mechanism between using Mono's atomic.h, glib 2.4
135           functions, and horribly unsafe-but-no-alternative code.
136
137 2008-02-12  Jonathan Pryor  <jpryor@novell.com>
138
139         * signal.c: Fix another build break; g_atomic_int_set() (part of GLib 2.10)
140           isn't present on all build machines, so use an alternate function.
141
142 2008-02-08  Jonathan Pryor  <jpryor@novell.com>
143
144         * signal.c: Mono_Unix_UnixSignal_WaitAny() semantic change: return the index
145           into the signals array of the first signaled signal if successful,
146           otherwise return the timeout.
147
148 2008-02-07  Jonathan Pryor  <jpryor@novell.com>
149
150         * signal.c: Make the signal handler thread-safe, so that it can safely be
151           invoked concurrently from multiple threads.
152
153 2008-02-05  Jonathan Pryor  <jpryor@novell.com>
154
155         * signal.c: Fix the Win32 build.
156
157 2008-01-28  Jonathan Pryor  <jpryor@novell.com>
158
159         * signal.c: Provide support functions for Mono.Unix.UnixSignal, which 
160           supports both polling and waiting on signal emission.
161         * map.h: Flush (adds UnixSignal-related prototypes).
162
163 2008-01-05  Jonathan Pryor  <jpryor@novell.com>
164
165         * map.h, map.c: Flush; add new ST_NOEXEC, ST_REMOUNT, and ST_BIND MountFlags 
166           enumeration values.
167
168 2007-12-17  Jonathan Pryor  <jpryor@novell.com>
169
170         * map.h: Flush; add Mono_Posix_Syscall__Utsname, Mono_Posix_Syscall_uname()
171           declarations.
172         * Makefile.am: Add sys-utsname.c to the build.
173         * sys-utsname.c: Added; binding for uname(2).
174         * mph.h: Change definition of _mph_copy_structure_strings() so that the
175           offset array specifies whether the string is a pointer (char*) or inline
176           array (char[]) within the structure.  Necessary because most bound
177           structure string members are pointers, but `struct utsname' uses arrays.
178         * fstab.c, pwd.c: Update offset array generation due to above.
179         * x-struct-str.c: Update _mph_copy_structure_strings() as above.
180
181 2007-11-01  Geoff Norton  <gnorton@novell.com>
182
183         * stdio.c:  Handle Leopards lack of L_cuserid.
184
185 2007-10-25  Jonathan Pryor  <jonpryor@vt.edu>
186
187         * stdio.c: Provide errno as a parameter and set errno before calling
188           perror(3), as errno is cleared during P/Invoke.
189         * map.h: Updated prototype for Mono_Posix_Stdlib_perror().
190
191 2007-09-08  Jonathan Pryor  <jonpryor@vt.edu>
192
193         * dirent.c: NAME_MAX isn't defined on Solaris; fix the build.
194
195 2007-09-04  Jonathan Pryor  <jonpryor@vt.edu>
196
197         * dirent.c: Fix `struct dirent' overflow on Solaris.  See #82678.
198
199 2007-09-03  Jonathan Pryor  <jonpryor@vt.edu>
200
201         * dirent.c: Fix logic to determine if readdir_r() succeeded.  
202           Thanks to Albert Lee for the patch; see #82678.
203
204 2007-08-14  Wade Berrier  <wberrier@novell.com>
205
206         * serial.c: include sys/time.h for mac osx 10.3 for timeval
207
208 2007-08-12  Lukasz Byczynski <lukaszb@forcom.com.pl>
209
210         * serial.c:
211         
212         - all changes are based on Windows .Net SerialPort behavior and
213         this
214         document: http://www.easysw.com/~mike/serial/serial.html
215         - removed wrong default values from open_serial
216         - added timeout detection in write_serial
217         - added proper parameters setting in set_attributes
218
219 2007-06-29  Jonathan Pryor  <jonpryor@vt.edu>
220
221         * dirent.c, grp.c, pwd.c, stdio.c, syslog.c, unistd.c: Following in the
222           logic of the 2007-06-27 logic...  Only return failure if an actual
223           DOCUMENTED error occurred.  For many of these functions, there are no
224           docuemented errors, so they "can't fail," even if errno were set.
225           All praise the POSIX standard?
226
227 2007-06-28  Jonathan Pryor  <jonpryor@vt.edu>
228
229         * map.c, map.h: Refresh -- to add Utimbuf copy conversion functions.
230           - Includes latest-and-greatest create-native-map output.
231           - Mono's Reflection output has changed as well --
232             FieldInfo.GetValue().ToString("x") is now "correct" for the underlying
233             type, so `short' enums are 0x0000, etc.
234           - Member sorting is now case-insensitive.
235
236 2007-06-27  Jonathan Pryor  <jonpryor@vt.edu>
237
238         * grp.c, pwd.c: Only return failure if a documented errno is encountered.
239           This fixes UnixUserInfo.GetLocalUsers() and UnixGroupInfo.GetLocalGroups()
240           on systems missing the file /etc/default/nss (which generates ENOENT,
241           which isn't documented, so therefore it's not a "real" error).
242         * mph.h: Add mph_return_if_val_in_list5().
243
244 2007-03-28  Wade Berrier  <miguel@novell.com>
245
246         * supportw.c (SendMessageA/GetWindowLongA): Return values to fix some 
247         warnings, even though these aren't called (Patch from suse rpms)
248
249 2007-01-23  Miguel de Icaza  <miguel@novell.com>
250
251         * serial.c (poll_serial): Fix for #79073, based on the patch by
252         Leszek Ciesielski, without introducing a GNU libc-ism.
253         (write_serial): Handle EINTR here as well.
254
255 2006-11-30  Jonathan Pryor  <jonpryor@vt.edu>
256
257         * map.c: _cnm_return_val_if_overflow() should be a no-op unless DEBUG is
258           defined.  "Fixes" false positives pending further investigation.
259
260 2006-11-18  Miguel de Icaza  <miguel@novell.com>
261
262         * serial.c (poll_serial): Do not report an error for EINTR. 
263
264 2006-11-18  Jelle Hissink  <Jelle.Hissink@C-it.nl>
265
266         * serial.c (poll_serial): Add timeout parameter to poll.
267
268         Fixes #79722 and #79735
269
270 2006-11-17  Jonathan Pryor  <jonpryor@vt.edu>
271
272         * map.c: Flush (fix FromFilePermissions for SuppressFlags-marked values).
273
274 2006-11-15  Jonathan Pryor  <jonpryor@vt.edu>
275
276         * map.c: Flush (removes warnings due to _cnm_return_val_if_overflow()).
277
278 2006-11-14  Jonathan Pryor  <jonpryor@vt.edu>
279
280         * map.c: Flush (fixes FilePermissions conversion, allowing Syscall.stat() to
281           work as expected).
282
283 2006-11-13  Jonathan Pryor  <jonpryor@vt.edu>
284
285         * mph.h: Add macro for XATTR_AUTO, so that XattrFlags mapping works (as
286           XATTR_AUTO is a value which frequently isn't definedy by any OS, yet it
287           has the value 0, a default value which is supported by most OS's).
288
289 2006-11-08  Jonathan Pryor  <jonpryor@vt.edu>
290
291         * Makefile.am: Revert addition of L_SET et al; this breaks the Win32 build.
292         * map.c: Revert addition of L_SET et al; this breaks the Win32 build.
293         * mph.h: Add macros for L_SET, L_INCR, and L_XTND for non-Win32 platforms.
294
295 2006-11-07  Jonathan Pryor  <jonpryor@vt.edu>
296
297         * Makefile.am: Add implementation macros for L_SET, L_INCR, and L_XTND.
298         * map.c: Make sure that L_SET, L_INCR, and L_XTND are defined.  Lets
299           Mono_Posix_FromSeekFlags() work on Solaris, fixing Gnome Bugzilla 370081.
300
301 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
302
303         * stdio.c: Some BSDs define clearerr(3) as a macro, so we need to cast
304           `stream' to a `FILE*' to avoid derefing a `void*'.
305         * sys-statvfs.c: Build fix to support OS X 10.3.9 & systems w/o statvfs(2).
306
307 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
308
309         * mph.h: Add fallback typedefs for blkcnt_t, blksize_t, suseconds_t so that
310           map.c can rely on their presence.  (Some versions of OS X don't provide
311           these typedefs.)
312
313 2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>
314
315         * map.c: Improve handling of [Flags] enumerations which mix bitfields and
316           non-bitfield values (i.e. FilePermissions and S_IFREG, which isn't a bit
317           field, along with a few other FilePermissions values).  Fixes #79161.
318
319 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
320
321         * map.c: Enclose structure conversion functions with HAVE_<<STRUCT NAME>>,
322           so that Unix-specific structures don't break the Win32 build.
323
324 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
325
326         * create-native-map.exe: Remove.  Just grab a new copy whenever we need to
327           refresh map.[ch].
328         * Makefile.am: Remove `update-create-native-map' target, and just have the
329           `refresh' target grab the latest create-native-map.exe program.
330         * map.c: Flush (remove fallback to <inttypes.h> constants).
331
332 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
333
334         * create-native-map.exe: Update; Adds support for integral limit fallback.
335         * map.c: Flush (adds integral limits fallback, so that if G_MININT8 doesn't
336           exist we can fallback sanely instead of breaking the build).
337
338 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
339
340         * Makefile.am: Add "mph.h" to the generated code for map.c, so that
341           EOVERFLOW is defined on Win32.
342         * map.c: Flush (adds #include "mph.h").
343
344 2006-10-25  Wade berrier  <wberrier@novell.com>
345
346         * Makefile.am: remove map-icalls.h so make dist succeeds
347
348 2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
349
350         * dirent.c, errno.c, fcntl.c, fstab.c, grp.c, macros.c, pwd.c, signal.c, 
351           stdio.c, stdlib.c, string.c, sys-mman.c, sys-sendfile.c, sys-stat.c, 
352           sys-statvfs.c, sys-time.c, sys-xattr.c syslog.c, time.c, unistd.c, 
353           utime.c: Remove structure definitions, and use the
354           create-native-map generated definitions within map.h.  Update function
355           prototypes to match current map.h declarations.
356         * map.c, map.h: Flush (current create-native-map output).
357         * mph.h: Don't include "map-icalls.h"; "icalls" are now in map.h.
358         * create-native-map.exe: Added; cached version of create-native-map.exe
359           used to update map.c, map.h.  (create-native-map.exe source within
360           mono-tools/create-native-map.)
361         * Makefile.am: Added update-create-native-map target to update 
362           create-native-map.exe using pkg-config & the create-native-map.pc package. 
363                 Use create-native-map.exe to generate map.* files instead of make-map.exe.
364         * sys-statvfs.c: Add Mono_Posix_ToStatvfs, Mono_Posix_FromStatvfs exports.
365
366 2006-09-15  Jonathan Pryor  <jonpryor@vt.edu>
367
368         * Makefile.am: Remove CRYPT_LIBS use; we no longer rely on libcrypt.
369         * stdlib.c: Remove setkey(3) wrapper.
370         * unistd.c: Remove encrypt(3) wrapper.
371
372 2006-08-13  Miguel de Icaza  <miguel@novell.com>
373
374         * serial.c (get_bytes_in_buffer): Change the signature, we do not
375         return any meaningful error other than -1.
376
377 2006-06-28  Zoltan Varga  <vargaz@gmail.com>
378
379         * mph.h (MPH_INTERNAL): Only use this if HAVE_VISIBILITY_HIDDEN is
380         defined since it is not supported on some archs with gcc.
381
382 2006-04-28  Wade Berrier <wberrier@novell.com>
383
384         * serial.c: Add sys/filio.h for solaris for FIONREAD
385
386 2006-04-20  Geoff Norton  <gnorton@customerdna.com>
387
388         * serial.c: Change TIOCINQ to FIONREAD to 
389         fix the build on the *BSDs.
390
391 2006-04-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
392
393         * serial.c: Added poll_serial () function, to poll
394         outside the read_serial () functions; and get_bytes_in_buffer (), to
395         get bytes in serialport buffers . Update some functions/enums
396         used by System.IO.Port.SerialPort too (Changes aproved by Miguel:
397         we will add tests in the managed side).
398         
399 2006-03-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>
400
401         * serial.c: Add get_signal_code, get_signal, and set_signal
402         functions to access serial signals. Also add a MonoSerialSignal
403         enum, which is a copy of System.IO.Ports.SerialSignal.
404
405 Thu Mar 16 17:27:46 CET 2006 Paolo Molaro <lupus@ximian.com>
406
407         * serial.c: removed useless serial.h file (it was also
408         breaking the build).
409
410 2006-03-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>
411
412         * serial.c: Fix a pair of wrong or incomplete assignations
413         in set_attributes.
414         
415 2006-02-28  Carlos Alberto Cortez <calberto.cortez@gmail.com>
416
417         * serial.h: New file with serial port constants.
418         * serial.c: Use the constants in serial.h instead of magic numbers.
419         
420 2006-01-03  Jonathan Pryor  <jonpryor@vt.edu>
421
422         * sys-time.c: lutimes(2) only exists on some BSDs.  There's a configure
423           check for it now -- use it.
424
425 2005-12-28  Jonathan Pryor  <jonpryor@vt.edu>
426
427         * map-icalls.h: Flush (add utimes_bad, lutimes, futimes).
428         * sys-time.c: Add lutimes(2) and futimes(2) wrapper.
429
430 2005-12-27  Jonathan Pryor  <jonpryor@vt.edu>
431
432         * map.c: Include <sys/mman.h>.  Fixes #77091.  Thanks to Ben Gamari.
433
434 2005-12-01  Jonathan Pryor  <jonpryor@vt.edu>
435
436         * Makefile.am: Use $(CRYPT_LIB), not -lcrypt, as not all platforms 
437           support -lcrypt.
438         * stdlib.c: Wrap Mono_Posix_Syscall_setkey() within HAVE_SETKEY, not
439           PLATFORM_WIN32
440
441 2005-12-01  Daniel Drake  <dsd@gentoo.org>
442
443         * Makefile.am: Link against libcrypt, needed for setkey(3) as referenced
444         in stdlib.c. Problem caught by Michael Hill.
445
446 2005-11-07  Jonathan Pryor  <jonpryor@vt.edu>
447
448         * map-icalls.h: Oddly, this file didn't get the new functions added in
449           2005-10-14 -- ToConfstrName, FromConfstrName, etc.  Add them.
450         * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
451
452 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
453
454         * signal.c: Don't build Syscall wrappers on Win32.
455
456 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
457
458         * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
459         * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
460           return `void' so that they instead: (1) return `int', (2) clear errno
461           before calling the real function, and (3) return -1 if errno changed.
462           This must be done in native code because calling 
463           Stdlib.SetLastError/Syscall.xxx
464           from managed code won't work reliably (since errno may change between the
465           SetLastError call and the actual Syscall invocation).
466         * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3), 
467           and confstr(3) callers to explicitly choose their own errno value.
468         * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
469           (e.g. ConfStr --> ConfstrName, etc.).  This is so that they follow the
470           established naming conventions.
471         * map-icalls.h: Add new icalls.
472         * syslog.c: Added; wraps <syslog.h> functions.
473
474 2005-10-06  Jonathan Pryor  <jonpryor@vt.edu>
475
476         * Makefile.am (MPH_C_SOURCE): Add string.c.
477         * string.c: Added; exports strlen(3) wrapper.
478         * map-icalls.h: Prototype for strlen(3) wrapper.
479
480 2005-09-29  Miguel de Icaza  <miguel@novell.com>
481
482         * support-heap.c: Add meat to the Heap routines. 
483
484 2005-09-20  Jonathan Pryor  <jonpryor@vt.edu>
485
486         * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
487         * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,  
488           and MmapProts.  Huge re-ordering because of namespace change in managed
489           code (not relevant to C API), and make-map.exe now outputs types/members
490           in alphabetical order (to avoid major code churn in the future).
491
492 2005-07-12  Daniel Drake  <dsd@gentoo.org>
493
494         * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
495         glibc 2.2)
496         * Makefile.am: Link to libattr if libc does not provide the xattr
497         syscalls.
498
499 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
500
501         *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
502
503 2005-07-01  Daniel Drake  <dsd@gentoo.org>
504
505         * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
506           to provide transparency between Linux and FreeBSD EA's.
507         * map-icalls.h: Update as above
508
509 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
510
511         * supportw.c: HeapDestroy.
512         * Makefile.am: don't build supportw on windows.
513
514 2005-06-29  Ben Maurer  <bmaurer@ximian.com>
515
516         * Makefile.am: namespace our library.
517
518 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
519
520         * supportw.c:
521         * supportw.h:
522         * Makefile.am: new library intended to provide often P/Invoked windows
523         API functions not present in io-layer.
524
525 2005-06-29  Jonathan Pryor  <jonpryor@vt.edu>
526
527         * map.c: Handle Syslog-related changes (SyslogFacility isn't a 
528           [Flags] enum); make-map.exe changes.
529
530 2005-06-28  Jonathan Pryor  <jonpryor@vt.edu>
531
532         * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
533           enum; change in order between LOG_USER and LOG_USRE).
534
535 2005-06-27  Jonathan Pryor  <jonpryor@vt.edu>
536
537         * map.c, map.h: Add corrected spelling of LOG_USER.
538
539 2005-06-13  Miguel de Icaza  <miguel@novell.com>
540
541         *  sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
542         not f_flag. 
543
544 2005-06-08  Jonathan Pryor  <jonpryor@vt.edu>
545
546         * Makefile.am: Create an unversioned library.  We won't make any gaurantees
547           about ABI stability until Mono 1.2 (if then).
548
549 2005-06-07  Jonathan Pryor  <jonpryor@vt.edu>
550
551         * sys-mman.c: Check for presence of mremap and remap_file_pages.
552
553 2005-06-05  Jonathan Pryor  <jonpryor@vt.edu>
554
555         * map-icalls.h, map.h: Change header comment so it matches what 
556           `make refresh` generates.
557         * map.c: Add <sys/xattr.h> header.
558
559 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
560
561         * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
562           munlock, mremap, mincore, remap_file_pages.
563         * map-icalls.h: Update to latest shared interface.
564         * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
565           MlockallFlags, MremapFlags.
566         * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
567
568 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
569
570         * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
571
572 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
573
574         * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
575
576 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
577
578         * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
579
580 2005-05-18  Jonathan Pryor  <jonpryor@vt.edu>
581
582         * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
583           declarations for DllImport functions in Mono.Posix.dll.  This ensure
584           consistency between Mono.Posix.dll and MonoPosixHelper.so.
585         * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
586           exports have correct prototypes.
587         * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c, 
588           sys-time.c, utime.c: Correct prototypes to match map-icalls.h.  Alas, this
589           "loses" information -- FILE* becomes void*, etc. -- but no semantics or
590           ABI should be changed (except for Mono_Posix_Syscall_utime).  Some
591           structure names also changed to match the generated names; since the
592           structures are private, this shouldn't break anything.
593         * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
594           about a missing prototype.  This was never in a stable release.
595         * old-map.c: Include mph.h for prototype checking.
596         * unistd.c: SeekFlags conversion is now done in managed code so that a short
597           isn't passed as a parameter; Correct prototypes to match map-icalls.h.
598         * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to 
599           match map-icalls.h.
600         * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
601         * sys-wait.c: Include mph.h so that prototypes are checked.
602
603 2005-05-16  Jonathan Pryor  <jonpryor@vt.edu>
604
605         * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
606         * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
607           does something useful.
608
609 2005-05-12  Jonathan Pryor  <jonpryor@vt.edu>
610
611         * map.c, map.h: Add FromMountFlags, ToMountFlags.  (MountFlags is used in
612           `struct statvfs', which is POSIX).
613         * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
614           managed equivalent.
615
616 2005-05-03  Geoff Norton  <gnorton@customerdna.com>
617
618         * sys-xattr.c:  Mac OS/X Tiger supports xattr but has a different API for supporting
619         resource forks.  Allow mono to build on Tiger.
620
621 2005-04-30  Jonathan Pryor  <jonpryor@vt.edu>
622
623         * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
624           "dump" of a fpos_t.  This is used for Mono.Unix.FilePosition.ToString().
625
626 2005-04-19  Jonathan Pryor  <jonpryor@vt.edu>
627
628         * map.c, map.h: Added XattrFlags values, functions.
629         * sys-xattr.c: Added; <sys/xattr.h> wrapper functions.  Thanks to Daniel
630           Drake for writing these.
631         * Makefile.am: Add sys-xattr.c to the build.
632
633 2005-04-07  Jonathan Pryor  <jonpryor@vt.edu>
634
635         * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
636           (otherwise assume existence of XPG variant).  This allows proper
637           compilation under Red Hat 9.
638         * fstab.c: protect against users calling setfsent(), setfsent(), ...  
639           endfsent(), which would otherwise leak a FILE handle.
640
641 2005-04-05  Zoltan Varga  <vargaz@freemail.hu>
642
643         * mph.h: Apply patch from the freebsd ports collection.
644
645 2005-02-10  Zoltan Varga  <vargaz@freemail.hu>
646
647         * zlib_macros.c (create_z_stream): Explicitly check for older versions
648         of zlib.
649
650 2005-02-08  Zoltan Varga  <vargaz@freemail.hu>
651
652         * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
653
654 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
655
656         * grp.c: Oops.  Didn't see other Solaris fix in #72292.
657
658 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
659
660         * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
661           have a stale value, leading to spurious errors later.  Fixes #72292.
662
663 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
664
665         * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
666           on Windows as well as Unix.
667
668 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
669
670         * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall, 
671           since it's part of ANSI C (and errno will be used from StdioFileStream).  
672           Add Mono_Posix_Stdlib_SetLastError.  Don't remove the Syscall version, as 
673           we don't want to break Mono 1.1.4/svn users the day after release. :-)
674
675 2005-01-25  Jonathan Pryor  <jonpryor@vt.edu>
676
677         * macros.c: Use gint64, not long, to match C# declaration.  Fixes 71152.
678
679 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
680
681         * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
682
683 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
684
685         * map.h: Correct Mono_Posix_OpenFlags values (they should now match 
686           x86 linux); remove unused enumerations (MountFlags, etc.).
687
688 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
689
690         * fstab.c: Fix HPUX support.  HPUX includes both <fstab.h> and
691           <checkpoint.h>, so we need to give preference to <checkpoint.h>.
692
693 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
694
695         * fstab.c: Add support for HPUX, which uses <checklist.h>.
696
697 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
698
699         * map.c: Continuing my ineptitude...  <sys/wait.h> isn't on Win32.
700         * mph.h: Win32 doesn't define EOVERFLOW, either.  Define it.
701
702 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
703
704         * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
705
706 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
707
708         * map.c: Fix Win32 build break.  Win32 doesn't have all the sys/* headers.
709
710 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
711
712         * serial.c: HPUX compiler fix.
713         * stdlib.c: Add C-defined macro wrappers.
714
715 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
716
717         * stdio.c: Add wrapper for C99's snprintf(3).
718
719 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
720
721         * Makefile.am: Rewrite.  Remove configure-generated warnings about 
722           multiple _LIBADD and _SOURCES lines.  Add support for Win32.  
723           Win32 support is limited to ANSI C functions.
724         * stdio.c: Don't compile Unix wrappers on Win32.
725
726 2005-01-04  Raja R Harinath  <rharinath@novell.com>
727
728         * Makefile.am (LIBS): Remove.  Was overriding results of configure check.
729         (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
730
731 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
732
733         * Makefile.am: Add libnsl to LIBS.  Hopefully this will let sparc link.
734         * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
735
736 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
737
738         * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
739         * unistd.c: Check for presence of gethostname and sethostname.
740
741 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
742
743         * mph.h, x-struct-str.c: Add "const" to parameters to remove 
744           "warning: passing arg [2|4]...discards qualifiers" message.
745
746 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
747
748         * fstab.c: Remove some sparc compiler warnings.
749
750 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
751
752         * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
753           functionality in getvfsent(3C).  Implement Solaris support.
754
755 2005-01-02  Jonathan Pryor  <jonpryor@vt.edu>
756
757         * stdio.c: More wrapper functions.  I missed a few macros...  This should
758           complete all macro's defined in <stdio.h> for C99.
759
760 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
761
762         * stdio.c: More wrapper functions.  This should complete C89's <stdio.h>
763           requirements.
764
765 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
766
767         * sys-statvfs.c: Further proving that changing code without compiling is
768           dangerous business...  Compiler fix for OS X.
769
770 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
771
772         * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
773
774 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
775
776         * Makefile.am: Add signal.c to the build.
777         * signal.c: Added.  Contains helper functions to wrap signal(2).
778
779 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
780
781         * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
782           f_fsid isn't an integral type; fstatfs needs to use fpathconf).
783
784 2004-12-29  Jonathan Pryor  <jonpryor@vt.edu>
785
786         * unistd.c: Null-terminate the string returned by readlink(2).  This works
787           around a marshaler "issue".
788
789 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
790
791         * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
792           against glib-2.0 (to use g_assert()).
793
794 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
795
796         * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3), 
797           getfsspec(3).
798         * map.c: Add new conversion functions for SyslogOptions, SyslogFacility, 
799           SyslogLevel; see syslog(3) for details.
800         * map.h: Add new conversion functions and values for SyslogOptions, 
801           SyslogFacility, SyslogLevel; see syslog(3) for details.
802         * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
803         * mph.h: Document location for Mac OS X man page documentation; add
804           MPH_INTERNAL macro for intra-library function calls (for functions that
805           shouldn't be exported from libMonoPosixHelper.so); declare
806           _mph_copy_structure_strings().
807         * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
808           struct passwd.
809         * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
810           fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
811           of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
812         * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
813           generalized interface to copy strings between structures (as is needed in
814           pwd.c and fstab.c).
815
816 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
817
818         * serial.c: remove mono calls from here: they break the build
819         and they don't belong here.
820
821 2004-12-21  Chris Toshok  <toshok@ximian.com>
822
823         * serial.c: initial import of System.IO.Ports pinvoke stuff.
824
825         * Makefile.am (MPH_SOURCE): add serial.c.
826
827 2004-11-30  Jonathan Pryor  <jonpryor@vt.edu>
828
829         * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
830           <glib/gutils.h> to handle the `inline' keyword.
831
832 2004-11-27  Miguel de Icaza  <miguel@ximian.com>
833
834         * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
835         the old API (currently the old API would fail).
836
837 2004-11-25  Raja R Harinath  <rharinath@novell.com>
838
839         * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
840
841 2004-11-18  Jonathan Pryor  <jonpryor@vt.edu>
842
843         * stdio.c: Add fread(3) and fwrite(3) wrappers.
844
845 2004-11-16  Jonathan Pryor  <jonpryor@vt.edu>
846
847         * Makefile.am: Remove sys-mount.c from the build.
848         * sys-mount.c: Delete.  We're not exporting mount-related functionality
849           anymore.  It's not remotely portable, and trying to make it portable is a
850           doomed idea.
851         * map.c: Remove mount- and umount-related conversion functions.
852
853 2004-11-14  Geoff Norton  <gnorton@customerdna.com>
854         
855         * mph.h:  Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
856         and unistd.c still check this configuration value.  This allows mono
857         to build on *BSD again.
858
859 2004-11-12  Jonathan Pryor <jonpryor@vt.edu>
860
861         * dirent.c: Only access members which exist on the target
862           platform.
863         * errno.c: Only export strerror_r if it's available.
864         * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
865         * sys-mman.c: Only export posix_madvise if it's available.
866         * unistd.c: Only export sethostid if it's available.
867
868 2004-11-08  Jonathan Pryor <jonpryor@vt.edu>
869
870         * Makefile.am: Add sys-sendfile.c to the build.
871         * dirent.c, fcntl.c, unistd.c: Remove
872           compile-time checks for -64 apis (pread64, etc.), as they're
873           superfluous.  GLibc #defines the functions to the appropriate
874           -64 counterpart when necessary, and Darwin is intrinsically
875           large-file-aware, so manual checking on my part is redundant and
876           unnecessary.
877         * grp.c: Add checks for non-portable functions getgrnam_r,
878           getgrgid_r.
879         * pwd.c: Add checks for non-portable functions getpwnam_r,
880           getpwuid_r.
881         * map.c: Remove <poll.h> include.  Building on Tiger (Mac
882           OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
883           included, so only use <sys/poll.h>.
884         * mph.h: Clean up macro handling for type overflow checking.
885
886 2004-11-05  Jonathan Pryor <jonpryor@vt.edu>
887
888         * .cvsignore: Ignore generated files.
889         * Makefile.am: Add new INCLUDE directives (for glib
890           headers), source; bump library version (so we don't clobber
891           previous versions of libMonoPosixHelper.so).
892         * dirent.c: New file; <dirent.h> wrapper functions; 
893           BSD portability fixes.
894         * errno.c: New file; <errno.h> wrapper functions
895         * fcntl.c: New file; <fcntl.h> wrapper functions;
896           BSD portability fixes.
897         * grp.c: New file; <grp.h> wrapper functions;
898           BSD portability fixes.
899         * map.c: Updated macro mapping functions (more enums
900           mapped, more error checking, etc.).
901         * map.h: Updated macro mapping functions
902         * old-map.c: Previous map.c implementation, for backward
903           compatibility Remove spurious warning about redefining
904           _GNU_SOURCE.
905         * old-map.h: Previous map.h implementation, for backward
906         compatibility
907         * mph.h: New file; Utility types, macros;
908           BSD portability fixes.
909         * pwd.c: New file; <pwd.h> wrapper functions;
910           BSD portability fixes.
911         * stdio.c: New file; <stdio.h> wrapper functions
912         * stdlib.c: New file; <stdlib.h> wrapper functions
913         * sys-mman.c: New file; <sys/mman.h> wrapper functions
914         * sys-mount.c: New file; <sys/mount.h> wrapper functions;
915           BSD portability fixes.
916         * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
917           functions; BSD portability fixes.
918         * sys-stat.c: New file; <sys/stat.h> wrapper functions
919         * sys-wait.c: New file; <sys/wait.h> wrapper functions
920         * time.c: New file; <time.h> wrapper functions;
921           BSD portability fixes.
922         * unistd.c: New file; <unistd.h> wrapper functions;
923           BSD portability fixes.
924