for TARGET_J2EE only:
[mono.git] / mcs / class / Mono.Posix / Mono.Unix.Native / ChangeLog
1 2007-12-17  Jonathan Pryor  <jonpryor@vt.edu>
2
3         * Syscall.cs: Bind uname(2).
4
5 2007-10-25  Jonathan Pryor  <jonpryor@vt.edu>
6
7         * Stdlib.cs: Fix perror(3) so that it works as expected.  (Since errno is
8           cleared during P/Invoke, previously Stdlib.perror("") would always print
9           "Success", which isn't very helpful.)
10
11 2007-06-28  Jonathan Pryor  <jonpryor@vt.edu>
12
13         * NativeConvert.generated.cs: Flush (add TryCopy() methods for Utimbuf).
14         * Syscall.cs: Map Utimbuf to `struct utimbuf'; needed so that Mono.Fuse can
15           rely on Mono.Posix.dll for copying all native types.
16
17 2006-11-14  Jonathan Pryor  <jonpryor@vt.edu>
18
19         * MapAttribute.cs: Update (changes SuppressFlags to a string holding mask).
20         * Syscall.cs: Specify the mask value for non-bitmask values in
21           FilePermissions.
22
23 2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>
24
25         * MapAttribute.cs: Update (adds SuppressFlags property).
26         * Syscall.cs: Mark non-flags FilePermissions enumeration members so that
27           they aren't treated as bitfields.  Impacts e.g. S_IFDIR, S_IFCHR, etc..
28
29 2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
30
31         * HeaderAttribute.cs: Removed.  Use create-native-map command-line arguments
32           instead of HeaderAttribute.Includes & HeaderAttribute.Defines.
33         * make-map.cs: Moved to mono-tools/create-native-map/src/create-native-map.cs.
34         * MapAttribute.cs: Moved from ../Mono.Unix.  Can now be
35           specified on Class, Delegeate, Enum, Field, & Struct (instead of just
36           Enum).  Add NativeType property.
37         * NativeConvert.generated.cs: Flush (adds new .TryCopy methods to copy [Map]'d
38           structures).
39         * NativeConvert.cs: Add .TryCopy methods for Statvfs.
40         * Syscall.cs: Remove HeaderAttribute declaration; Markup [Map]'d structure 
41           members with [Map] attributes (or MapAttribute subclasses) to specify the 
42           native types they correspond to (used by create-native-map).
43         * TypeAttributes.cs: Added; internal subclasses of MapAttribute to help
44           markup structures (e.g. so I can use [blkcnt_t] instead of 
45           [Map ("blkcnt_t")], thus minimizing the liklihood of a spelling error).
46
47 2006-09-15  Jonathan Pryor  <jonpryor@vt.edu>
48
49         * Syscall.cs: "Remove" crypt(3), encrypt(3), setkey(3).  These use an
50           encryption algorithm which was broken years ago and could be cracked in
51           minutes on a modern machine.  This also removes a libcrypt.so dependency,
52           which means you don't need to have development packages installed to use
53           these either (since "crypt" wasn't <dllmap>'d).  These are still present,
54           but marked [Obsolete] and throw a SecurityException when invoked.
55
56 2006-09-07  Jonathan Pryor  <jonpryor@vt.edu>
57
58         * Syscall.cs: readdir(P) is not thread-safe, so it needs to be locked so
59           that the `struct dirent' it returns is stable.
60
61 2006-04-06  Jonathan Pryor  <jonpryor@vt.edu>
62
63         * NativeConvert.cs: Fix ToDateTime()/FromDateTime()/ToTimeT()/FromTimeT() so
64           that they take timezones into account.  Previously, results would be off
65           by an hour if Daylight Savings Time was in effect.  Fixes #78033.
66
67 2006-03-23  Raja R Harinath  <rharinath@novell.com>
68
69         * NativeConvert.generated.cs: Update after merge.
70
71 2006-02-25  Marek Safar  <marek.safar@seznam.cz>
72
73         * NativeConvert.generated.cs: Guarded CLSCompliant attribute by NET_2_0
74         until mcs is merged with gmcs.
75
76 2006-02-21  Marek Safar  <marek.safar@seznam.cz>
77
78         * NativeConvert.generated.cs: Removed duplicated CLSCompliant attribute.
79
80 2006-01-10  Raja R Harinath  <rharinath@novell.com>
81
82         * Syscall.cs (sys_futimes): Remove buggy custom marshaller on 'fd' parameter.
83
84 2005-01-09  Jonathan Pryor <jonpryor@vt.edu>
85
86         * NativeConvert.cs: s/IsType/IsSet/g: deal with UnixFileSystemInfo method 
87           name change.
88
89 2005-01-02  Jonathan Pryor <jonpryor@vt.edu>
90
91         * Stdlib.cs: s/ACCESS/ACCES/g.  I didn't create a badly named errno value, I
92           mis-read EACCES in man pages.  I can't read. :-(
93
94 2005-01-02  Jonathan Pryor <jonpryor@vt.edu>
95
96         * NativeConvert.generated.cs: Flush (remove Obsolete members).
97         * Syscall.cs: Remove invalid utimes(2) wrapper.
98
99 2005-01-02  Jonathan Pryor <jonpryor@vt.edu>
100
101         * Stdlib.cs: s/ACCES/ACCESS/g.  How'd I create a badly named errno value?
102
103 2005-12-29  Jonathan Pryor <jonpryor@vt.edu>
104
105         * make-map.cs: Properly handle managed arrays in argument lists.
106         * Syscall.cs: Properly bind utimes(2) (the Linux man pages are vague on what
107           it does; the BSD ones are much better).  Bind lutimes(2) and futimes(2).
108
109 2005-12-27  Jonathan Pryor <jonpryor@vt.edu>
110
111         * Syscall.cs: Include <sys/mman.h> for map.c generation.  Fixes #77091.
112
113 2005-12-27  Jonathan Pryor <jonpryor@vt.edu>
114
115         * make-map.cs: Always include 2nd parameter of [Obsolete] attributes; mark
116           the [DllImport]ed method with [Obsolete] if the underlying type is
117           [Obsolete].
118         * NativeConvert.generated.cs: Flush.
119
120 2005-12-27  Jonathan Pryor <jonpryor@vt.edu>
121
122         * FileNameMarshaler.cs: Use UnixMarshal.PtrToStringUnix -- it's faster.
123
124 2005-11-28  Jonathan Pryor <jonpryor@vt.edu>
125
126         * Stdlib.cs: Prelink all SignalHandlers passed to Stdlib.signal().  This is
127           so that mono doesn't have to JIT the handler within signal context.
128
129 2005-11-08  Jonathan Pryor <jonpryor@vt.edu>
130
131         * Stdlib.cs: Implement IEquatable<FilePosition> for FilePosition.
132         * Syscall.cs: Provide GetHashCode(), Equals(), operator==, operator!= for
133           all structure types.  Implement IEquatable<T> for all "value type" 
134           structs and classes.
135
136 2005-11-07  Jonathan Pryor <jonpryor@vt.edu>
137
138         * Syscall.cs: *xattr functions should use the FileNameMarshaler for filenames.
139
140 2005-11-07  Jonathan Pryor <jonpryor@vt.edu>
141
142         * make-map.cs: Always use ordinal string sorting behavior.  The string
143           collation sorting has changed, so to keep the mono/support diff sizes down
144           we have to explicitly specify the previous implicit ordering.
145
146 2005-11-02  Jonathan Pryor <jonpryor@vt.edu>
147
148         * Syscall.cs: Remove [CLSCompliant(false)] when it isn't needed.
149
150 2005-11-02  Jonathan Pryor <jonpryor@vt.edu>
151
152         * FileNameMarshaler.cs: Use UnixMarshal.FreeHeap().  .Free() is obsolete.
153
154 2005-10-27  Jonathan Pryor <jonpryor@vt.edu>
155
156         * Stdlib.cs: Correct return type of setbuf(IntPtr, byte*).
157         * Syscall.cs: Remove [Obsolete] SyslogFacility.LOG_USRE member
158           (Mono.Unix.Native hasn't shipped yet, so nobody is using it); correct
159           [Obsolete] comment for getpagesize().
160
161 2005-10-26  Jonathan Pryor <jonpryor@vt.edu>
162
163         * FileNameMarshaler.cs: Deal with UnixMarshal method name changes.
164
165 2005-10-26  Jonathan Pryor <jonpryor@vt.edu>
166
167         * Stdlib.cs: FilePosition should derive from MarshalByRefObject, for two
168           reasons: (1) it's a recommendation from FxCop that classes implementing
169           IDisposable also derive from MarshalByRefObject; (2) FilePosition is
170           exposed from Mono.Unix.StdioFileStream, which (indirectly) inherits from
171           MarshalByRefObject.  Fix Equals() so it doesn't rely on Reflection.
172
173 2005-10-25  Jonathan Pryor <jonpryor@vt.edu>
174
175         * FileNameMarshaler.cs: Custom marshaler to marshal filenames using
176           Mono.Unix.UnixEncoding.  A custom marshaler is used to remove the need to
177           have ~6 lines of boilerplate on every method that takes filenames.
178         * Stdlib.cs, Syscall.cs:  Filenames need to be marshaled through the
179           FileNameMarshaler, which will encode/decode filenames with UnixEncoder.
180
181 2005-10-14  Jonathan Pryor <jonpryor@vt.edu>
182
183         * Stdlib.cs, Syscall.cs: Flush naming convention documentation.
184
185 2005-10-14  Jonathan Pryor <jonpryor@vt.edu>
186
187         * NativeConvert.generated.cs: Flush currently generated version.
188
189 2005-10-14  Jonathan Pryor <jonpryor@vt.edu>
190
191         * make-map.cs: Fix documentation comment.
192         * Stdlib.cs: Fix export of XprintfFunctions.syslog(); make SetLastError()
193           protected (normal user code shouldn't call it, as it isn't safe); 
194           replace functions which return `void' with functions which return `int'
195           (adding them to MonoPosixHelper.so as well) -- since users can't reliably
196           use SetLastError(), they need the "normal" error detection mechanism;
197           correct the strlen(3) export.
198         * Syscall.cs: 
199           - s/PathConf/PathconfName/, s/SysConf/SysconfName/, s/ConfStr/ConfstrName/ 
200             to follow documented enumeration naming conventions.
201           - replace functions which return `void' with functions which return `int'
202             (adding them to MonoPosixHelper.so as well) -- since users can't reliably
203             use SetLastError(), they need the "normal" error detection mechanism;
204
205 2005-10-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
206
207         * Stdlib.cs: add strlen() to fix the build.
208
209 2005-09-23  Jonathan Pryor <jonpryor@vt.edu>
210
211         * make-map.cs: Generate NativeConvert documentation XML fragments for use in
212           monodoc.
213
214 2005-09-20  Jonathan Pryor <jonpryor@vt.edu>
215
216         * ChangeLog: Started.
217         * CdeclFunction.cs: Copied from ../Mono.Unix; change namespace.
218         * HeaderAttribute.cs: Added
219         * make-map.cs: Copied from ../Mono.Unix; sort type and member names in
220           output (makes for a more stable svn history, as types/members won't change
221           position anymore within generated code); look for HeaderAttribute not
222           IncludeAttribute for getting headers & #defines; generate NativeConvert
223           partial class.
224         * NativeConvert.cs: Copied from ../Mono.Unix; change namespace; turn into a
225           partial class; Remove generated code (generated code is in
226           NativeConvert.generated.cs).
227         * NativeConvert.generated.cs: Added
228         * Stdlib.cs: Copied from ../Mono.Unix; change namespace; rename Error to
229           Errno (as Error is a "reserved word" in FxCop); [CLSCompliant(false)]
230           support.
231         * Syscall.cs: Use HeaderAttribute, not IncludeAttribute, for CLS compliance; 
232           add [CLSCompliant(false)] as needed; use NativeConvert, not UnixConvert.
233