2006-11-14 Jonathan Pryor * MapAttribute.cs: Update (changes SuppressFlags to a string holding mask). * Syscall.cs: Specify the mask value for non-bitmask values in FilePermissions. 2006-10-27 Jonathan Pryor * MapAttribute.cs: Update (adds SuppressFlags property). * Syscall.cs: Mark non-flags FilePermissions enumeration members so that they aren't treated as bitfields. Impacts e.g. S_IFDIR, S_IFCHR, etc.. 2006-10-24 Jonathan Pryor * HeaderAttribute.cs: Removed. Use create-native-map command-line arguments instead of HeaderAttribute.Includes & HeaderAttribute.Defines. * make-map.cs: Moved to mono-tools/create-native-map/src/create-native-map.cs. * MapAttribute.cs: Moved from ../Mono.Unix. Can now be specified on Class, Delegeate, Enum, Field, & Struct (instead of just Enum). Add NativeType property. * NativeConvert.generated.cs: Flush (adds new .TryCopy methods to copy [Map]'d structures). * NativeConvert.cs: Add .TryCopy methods for Statvfs. * Syscall.cs: Remove HeaderAttribute declaration; Markup [Map]'d structure members with [Map] attributes (or MapAttribute subclasses) to specify the native types they correspond to (used by create-native-map). * TypeAttributes.cs: Added; internal subclasses of MapAttribute to help markup structures (e.g. so I can use [blkcnt_t] instead of [Map ("blkcnt_t")], thus minimizing the liklihood of a spelling error). 2006-09-15 Jonathan Pryor * Syscall.cs: "Remove" crypt(3), encrypt(3), setkey(3). These use an encryption algorithm which was broken years ago and could be cracked in minutes on a modern machine. This also removes a libcrypt.so dependency, which means you don't need to have development packages installed to use these either (since "crypt" wasn't 'd). These are still present, but marked [Obsolete] and throw a SecurityException when invoked. 2006-09-07 Jonathan Pryor * Syscall.cs: readdir(P) is not thread-safe, so it needs to be locked so that the `struct dirent' it returns is stable. 2006-04-06 Jonathan Pryor * NativeConvert.cs: Fix ToDateTime()/FromDateTime()/ToTimeT()/FromTimeT() so that they take timezones into account. Previously, results would be off by an hour if Daylight Savings Time was in effect. Fixes #78033. 2006-03-23 Raja R Harinath * NativeConvert.generated.cs: Update after merge. 2006-02-25 Marek Safar * NativeConvert.generated.cs: Guarded CLSCompliant attribute by NET_2_0 until mcs is merged with gmcs. 2006-02-21 Marek Safar * NativeConvert.generated.cs: Removed duplicated CLSCompliant attribute. 2006-01-10 Raja R Harinath * Syscall.cs (sys_futimes): Remove buggy custom marshaller on 'fd' parameter. 2005-01-09 Jonathan Pryor * NativeConvert.cs: s/IsType/IsSet/g: deal with UnixFileSystemInfo method name change. 2005-01-02 Jonathan Pryor * Stdlib.cs: s/ACCESS/ACCES/g. I didn't create a badly named errno value, I mis-read EACCES in man pages. I can't read. :-( 2005-01-02 Jonathan Pryor * NativeConvert.generated.cs: Flush (remove Obsolete members). * Syscall.cs: Remove invalid utimes(2) wrapper. 2005-01-02 Jonathan Pryor * Stdlib.cs: s/ACCES/ACCESS/g. How'd I create a badly named errno value? 2005-12-29 Jonathan Pryor * make-map.cs: Properly handle managed arrays in argument lists. * Syscall.cs: Properly bind utimes(2) (the Linux man pages are vague on what it does; the BSD ones are much better). Bind lutimes(2) and futimes(2). 2005-12-27 Jonathan Pryor * Syscall.cs: Include for map.c generation. Fixes #77091. 2005-12-27 Jonathan Pryor * make-map.cs: Always include 2nd parameter of [Obsolete] attributes; mark the [DllImport]ed method with [Obsolete] if the underlying type is [Obsolete]. * NativeConvert.generated.cs: Flush. 2005-12-27 Jonathan Pryor * FileNameMarshaler.cs: Use UnixMarshal.PtrToStringUnix -- it's faster. 2005-11-28 Jonathan Pryor * Stdlib.cs: Prelink all SignalHandlers passed to Stdlib.signal(). This is so that mono doesn't have to JIT the handler within signal context. 2005-11-08 Jonathan Pryor * Stdlib.cs: Implement IEquatable for FilePosition. * Syscall.cs: Provide GetHashCode(), Equals(), operator==, operator!= for all structure types. Implement IEquatable for all "value type" structs and classes. 2005-11-07 Jonathan Pryor * Syscall.cs: *xattr functions should use the FileNameMarshaler for filenames. 2005-11-07 Jonathan Pryor * make-map.cs: Always use ordinal string sorting behavior. The string collation sorting has changed, so to keep the mono/support diff sizes down we have to explicitly specify the previous implicit ordering. 2005-11-02 Jonathan Pryor * Syscall.cs: Remove [CLSCompliant(false)] when it isn't needed. 2005-11-02 Jonathan Pryor * FileNameMarshaler.cs: Use UnixMarshal.FreeHeap(). .Free() is obsolete. 2005-10-27 Jonathan Pryor * Stdlib.cs: Correct return type of setbuf(IntPtr, byte*). * Syscall.cs: Remove [Obsolete] SyslogFacility.LOG_USRE member (Mono.Unix.Native hasn't shipped yet, so nobody is using it); correct [Obsolete] comment for getpagesize(). 2005-10-26 Jonathan Pryor * FileNameMarshaler.cs: Deal with UnixMarshal method name changes. 2005-10-26 Jonathan Pryor * Stdlib.cs: FilePosition should derive from MarshalByRefObject, for two reasons: (1) it's a recommendation from FxCop that classes implementing IDisposable also derive from MarshalByRefObject; (2) FilePosition is exposed from Mono.Unix.StdioFileStream, which (indirectly) inherits from MarshalByRefObject. Fix Equals() so it doesn't rely on Reflection. 2005-10-25 Jonathan Pryor * FileNameMarshaler.cs: Custom marshaler to marshal filenames using Mono.Unix.UnixEncoding. A custom marshaler is used to remove the need to have ~6 lines of boilerplate on every method that takes filenames. * Stdlib.cs, Syscall.cs: Filenames need to be marshaled through the FileNameMarshaler, which will encode/decode filenames with UnixEncoder. 2005-10-14 Jonathan Pryor * Stdlib.cs, Syscall.cs: Flush naming convention documentation. 2005-10-14 Jonathan Pryor * NativeConvert.generated.cs: Flush currently generated version. 2005-10-14 Jonathan Pryor * make-map.cs: Fix documentation comment. * Stdlib.cs: Fix export of XprintfFunctions.syslog(); make SetLastError() protected (normal user code shouldn't call it, as it isn't safe); replace functions which return `void' with functions which return `int' (adding them to MonoPosixHelper.so as well) -- since users can't reliably use SetLastError(), they need the "normal" error detection mechanism; correct the strlen(3) export. * Syscall.cs: - s/PathConf/PathconfName/, s/SysConf/SysconfName/, s/ConfStr/ConfstrName/ to follow documented enumeration naming conventions. - replace functions which return `void' with functions which return `int' (adding them to MonoPosixHelper.so as well) -- since users can't reliably use SetLastError(), they need the "normal" error detection mechanism; 2005-10-13 Gonzalo Paniagua Javier * Stdlib.cs: add strlen() to fix the build. 2005-09-23 Jonathan Pryor * make-map.cs: Generate NativeConvert documentation XML fragments for use in monodoc. 2005-09-20 Jonathan Pryor * ChangeLog: Started. * CdeclFunction.cs: Copied from ../Mono.Unix; change namespace. * HeaderAttribute.cs: Added * make-map.cs: Copied from ../Mono.Unix; sort type and member names in output (makes for a more stable svn history, as types/members won't change position anymore within generated code); look for HeaderAttribute not IncludeAttribute for getting headers & #defines; generate NativeConvert partial class. * NativeConvert.cs: Copied from ../Mono.Unix; change namespace; turn into a partial class; Remove generated code (generated code is in NativeConvert.generated.cs). * NativeConvert.generated.cs: Added * Stdlib.cs: Copied from ../Mono.Unix; change namespace; rename Error to Errno (as Error is a "reserved word" in FxCop); [CLSCompliant(false)] support. * Syscall.cs: Use HeaderAttribute, not IncludeAttribute, for CLS compliance; add [CLSCompliant(false)] as needed; use NativeConvert, not UnixConvert.