Marek Safar [Mon, 16 Jul 2012 21:29:06 +0000 (14:29 -0700)]
Merge pull request #390 from baulig/master
Fix relative URLs
Gonzalo Paniagua Javier [Mon, 16 Jul 2012 17:51:17 +0000 (13:51 -0400)]
GetResponse() returns 0 when it need more data, not -1
GetResponse() returns 0 to signal that it needs more data to complete
while -1 signals an error processing the data.
Zoltan Varga [Mon, 16 Jul 2012 16:14:57 +0000 (09:14 -0700)]
Merge pull request #391 from xen2/
e377dd65b5599d5a9ecf4bfde625e25fcd45ae68
Bugfix for #6112
Marek Safar [Mon, 16 Jul 2012 12:13:32 +0000 (13:13 +0100)]
Set field usage in resolve to accommodate for expression trees. Fixes #6119
Marek Safar [Mon, 16 Jul 2012 10:27:03 +0000 (11:27 +0100)]
Better error message for missing using for extension methods
Jérémie Laval [Mon, 16 Jul 2012 12:10:09 +0000 (05:10 -0700)]
Merge pull request #364 from directhex/master
Wrench-friendly Debian snapshot packaging
Zoltan Varga [Mon, 16 Jul 2012 03:13:38 +0000 (05:13 +0200)]
Fix #6112 for amd64 as well.
Zoltan Varga [Sun, 15 Jul 2012 12:59:03 +0000 (14:59 +0200)]
Fix the handling of fail tramps in the full-aot IMT thunks on x86. Fixes #6112.
Rodrigo Kumpera [Fri, 13 Jul 2012 22:00:03 +0000 (19:00 -0300)]
Clear more threadpool state prior to domain unload.
* threadpool.c: When cleaning the threadpool
before a domain unload, clear the sock_to_state hashtbale
as it might contain objects of the dying domain.
Rodrigo Kumpera [Thu, 12 Jul 2012 20:45:09 +0000 (17:45 -0300)]
Replace an assertion with an UNVERIFIED call in the JIT.
Jo Shields [Fri, 13 Jul 2012 17:44:14 +0000 (18:44 +0100)]
[debian-snapshot] Pull in a fix for more robust path handling.
Marek Safar [Fri, 13 Jul 2012 09:25:47 +0000 (10:25 +0100)]
Make nullable values debugging more pleasant.
Marek Safar [Fri, 13 Jul 2012 08:42:16 +0000 (09:42 +0100)]
Fix error test number
Gonzalo Paniagua Javier [Wed, 11 Jul 2012 20:53:27 +0000 (16:53 -0400)]
Backport from mobile
Rodrigo Kumpera [Wed, 11 Jul 2012 13:00:38 +0000 (10:00 -0300)]
Kill more compiler context code.
Rodrigo Kumpera [Wed, 11 Jul 2012 12:31:59 +0000 (09:31 -0300)]
MonoGenericClass::initialize runtime icall only needs fields.
Martin Baulig [Wed, 11 Jul 2012 00:19:46 +0000 (02:19 +0200)]
Support relative URIs.
Rodrigo Kumpera [Tue, 10 Jul 2012 21:38:32 +0000 (18:38 -0300)]
First pass killing compiler context support code.
* MonoGenericClass.cs: Switch to MS's behavior and kill
on ton of code in the process. Only MCS depended on it
and now we can kill it.
Rodrigo Kumpera [Tue, 10 Jul 2012 15:08:35 +0000 (12:08 -0300)]
Remove compiler context tests.
Rodrigo Kumpera [Tue, 10 Jul 2012 15:06:57 +0000 (12:06 -0300)]
Remove some dead code.
Rodrigo Kumpera [Mon, 9 Jul 2012 22:30:16 +0000 (19:30 -0300)]
Use a simpler design for IsUserType based on virtual calls.
* Type.cs (IsUserType) Replace the current hacky way with
a virtual call. This removes a direct dependency on a type
and a bunch of stuff that would otherwise be loaded for
no good reason.
Rodrigo Kumpera [Tue, 10 Jul 2012 18:32:49 +0000 (15:32 -0300)]
Disable mdb by default as it breaks sgen builds. This has gone unoticed for close to two years now.
Marek Safar [Tue, 10 Jul 2012 14:24:21 +0000 (15:24 +0100)]
Marek Safar [Tue, 10 Jul 2012 14:07:34 +0000 (15:07 +0100)]
Check type parameters constraints on best candidate only. Fixes #6056
Marek Safar [Tue, 10 Jul 2012 07:05:57 +0000 (08:05 +0100)]
Fixes build
Virgile Bello [Tue, 10 Jul 2012 03:54:23 +0000 (12:54 +0900)]
Fix #6112
c32a854: compile error and removed indirection.
Rodrigo Kumpera [Mon, 9 Jul 2012 23:44:10 +0000 (16:44 -0700)]
Merge pull request #386 from alexrp/master
Use a critical region in mono_gc_alloc_array.
alexrp [Mon, 9 Jul 2012 23:17:04 +0000 (01:17 +0200)]
Only use TLAB_ACCESS_INIT in sgen_card_table_wbarrier_object_copy for the critical region case.
alexrp [Mon, 9 Jul 2012 23:14:53 +0000 (01:14 +0200)]
Use a critical region in mono_gc_alloc_array.
Bojan Rajkovic [Mon, 9 Jul 2012 22:48:43 +0000 (15:48 -0700)]
Merge pull request #366 from robwilkens/bug5747-2
Fixes #5747: KeventWatcher - Was not returning subdirectories, repatched to fix regressions.
Rodrigo Kumpera [Fri, 6 Jul 2012 21:49:39 +0000 (18:49 -0300)]
Clear some dead code.
Rodrigo Kumpera [Tue, 5 Jun 2012 22:59:03 +0000 (19:59 -0300)]
Sanitize sgen's collection trigger internal API.
* sgen-gc.c: Sanitize all collection triggering functions in
just two. Make it possible to trigger a major GC before a minor
overflow happens.
Marek Safar [Mon, 9 Jul 2012 17:16:53 +0000 (18:16 +0100)]
Better error reporting for missing using directives
Marek Safar [Mon, 9 Jul 2012 15:56:22 +0000 (16:56 +0100)]
Fix infinite loop when parsin unclosed generic type declaration arguments
Marek Safar [Mon, 9 Jul 2012 15:25:55 +0000 (16:25 +0100)]
Restore id-buffer when after probing async keyword. Fixes #6037
Marek Safar [Mon, 9 Jul 2012 14:40:17 +0000 (07:40 -0700)]
Merge pull request #384 from miraclespain/master
Tests passing regarding modifications to System.Web.UI.WebControls.CheckboxList
Jakob Andersen [Mon, 9 Jul 2012 14:40:14 +0000 (16:40 +0200)]
Only compare values if postdata for the checkbox is actually recieved
Marek Safar [Mon, 9 Jul 2012 14:27:55 +0000 (15:27 +0100)]
Compare type definitions when checking nested type accessibility.
Marek Safar [Mon, 9 Jul 2012 09:19:39 +0000 (10:19 +0100)]
Better error message
Marek Safar [Mon, 9 Jul 2012 14:13:41 +0000 (07:13 -0700)]
Merge pull request #383 from JamesB7/system-security6
This version of CommonObjectSecurityTest does not use corlib AccessRule<T> or AuditRule<T>. Should unbreak it for .NET 2.0...
James Bellinger [Mon, 9 Jul 2012 14:03:02 +0000 (10:03 -0400)]
This version of CommonObjectSecurityTest should not use AccessRule<T> or AuditRule<T>
(just included simple specializations accomplishing the same).
Marek Safar [Mon, 9 Jul 2012 06:55:49 +0000 (23:55 -0700)]
Merge pull request #382 from JamesB7/system-security7
Semaphore and Pipe ACLs
James Bellinger [Sun, 8 Jul 2012 17:44:50 +0000 (13:44 -0400)]
Implemented PipeSecurity. GetAccessControl, SetAccessControl, and ACL-containing constructor overrides now work on pipes.
On another note, after writing a test I discovered Asynchronous pipes appear to be completely broken on Win32.
The class does not correctly handle overlapped I/O. This patch doesn't fix that.
One other fix in this patch, the DllImports for Win32 pipes did not have SetLastError set.
So, they were unable to return a meaningful error in the event of failure. This is now fixed, and
UnauthorizedAccessException correctly throws for pipe connects denied by ACL (necessary for PipeSecurity test).
James Bellinger [Sun, 8 Jul 2012 11:46:43 +0000 (07:46 -0400)]
Implement SemaphoreSecurity.
Marek Safar [Sun, 8 Jul 2012 18:40:48 +0000 (11:40 -0700)]
Merge pull request #381 from JamesB7/system-security6
Fix ObjectSecurityTest on .NET 2.0. The test no longer uses AccessRule<T> and AuditRule<T>.
James Bellinger [Sun, 8 Jul 2012 18:33:39 +0000 (14:33 -0400)]
Fix ObjectSecurityTest on .NET 2.0. The test no longer uses AccessRule<T> and AuditRule<T>.
Marek Safar [Sun, 8 Jul 2012 08:54:17 +0000 (01:54 -0700)]
Merge pull request #378 from miraclespain/master
Fix to problem with CheckboxList when running .NET 4.0
Marek Safar [Sun, 8 Jul 2012 08:53:08 +0000 (01:53 -0700)]
Merge pull request #380 from JamesB7/enum-fix
Fixed Type.GetEnumNames sort order (it's specified on MSDN). Previously ...
Marek Safar [Sun, 8 Jul 2012 08:49:01 +0000 (01:49 -0700)]
Merge pull request #379 from JamesB7/system-security6
ACLs! (File, Directory, Mutex, EventWaitHandle, RegistryKey)
James Bellinger [Sun, 8 Jul 2012 04:31:57 +0000 (00:31 -0400)]
Fixed Type.GetEnumNames sort order (it's specified on MSDN). Previously this method was returning in GetFields (declaration) order. It now returns sorted by the unsigned value of the enum as is correct.
Ran into this while calling Type.GetEnumNames and Type.GetEnumValues.
To my surprise the pairs didn't match up. Anyway, here's a fix.
James Bellinger [Sat, 7 Jul 2012 22:09:27 +0000 (18:09 -0400)]
RegistrySecurity now working!
James Bellinger [Sat, 7 Jul 2012 20:21:37 +0000 (16:21 -0400)]
Mutexes and event wait handles now work, with tests included. Fixed the exception on failure for MutexSecurity.
James Bellinger [Tue, 3 Jul 2012 22:57:27 +0000 (18:57 -0400)]
ACLs now work on Windows. Tests all the way up to DirectorySecurityTest and FileSecurityTest.
NativeObjectSecurity is implemented.
I've done it in such a way that, for OSes that do not have a unified API for all ACLs,
overrides can be done in subclasses such as FileSystemSecurity without trouble.
ObjectSecurity, CommonObjectSecurity, and DirectoryObjectSecurity all implemented.
MutexSecurity, PipeSecurity, etc. all just add type specialization and nothing else. Implemented all of these as well.
Access and Audit rules now correctly use NTAccount in their string overloads (see unit tests).
The constructors all provide correct AccessMasks now. In other words, these classes are all now un-broken/no longer stubs.
More unit tests for CommonSecurityDescriptor and fixes to pass them.
A few had checks that were redundant (implemented by (Authorization|Audit|Access)Rule) as well. These have been removed.
The Allow Everyone Full Access default for null DiscretionaryAcls in CommonSecurityDescriptor is, I think,
properly implemented. This required some changes to GenericSecurityDescriptor as well, but now Mono matches
MS.NET on GetSddl/GetBinaryForm for null DiscretionaryAcl including roundtrip.
What's still missing:
(1) CommonAcl's RemoveAccess/RemoveAudit. RemoveAll and RemoveSpecific work so it's not a big issue.
(2) CommonAcl merging will not yet try to merge a CommonAce together with an ObjectAce.
(3) The various *Security constructors. Get/SetAccessControl work on files and directories.
However, you still have to create and then set. I am not too familiar with Mono runtime internal
calls, but to someone who is: If the SECURITY_ATTRIBUTES parameter to Create*'s lpSecurityDescriptor
pointed to the output of GenericSecurityDescriptor's GetBinaryForm, that would be a complete
implementation.
James Bellinger [Tue, 3 Jul 2012 22:28:51 +0000 (18:28 -0400)]
CommonSecurityDescriptor!
Jakob Andersen [Sat, 7 Jul 2012 20:06:53 +0000 (22:06 +0200)]
Fix to compare to actual value as this is what is used in 4.0 since changeset
d8838a64
Gonzalo Paniagua Javier [Fri, 6 Jul 2012 17:42:43 +0000 (13:42 -0400)]
HtmlEncode the path
Fixes Novell bug #769799.
Mark Probst [Thu, 5 Jul 2012 13:58:43 +0000 (15:58 +0200)]
[sgen] Fix a race condition.
When a worker thread is looking for a job in the queue the collection
might already be over. Don't call code that assumes it's still running
until we're sure.
Rolf Bjarne Kvinge [Thu, 5 Jul 2012 12:54:19 +0000 (14:54 +0200)]
Rework RectangleF.Contains to not do equality comparison on floating point values. Fixes #5985.
Marek Safar [Thu, 5 Jul 2012 08:00:46 +0000 (09:00 +0100)]
Fix failing dns tests
Marek Safar [Thu, 5 Jul 2012 07:21:55 +0000 (08:21 +0100)]
Fix Order property to throw on no value
Zoltan Varga [Thu, 5 Jul 2012 02:59:11 +0000 (04:59 +0200)]
Fix an assert in the arm backend if an offset is too large.
Marek Safar [Wed, 4 Jul 2012 16:21:36 +0000 (09:21 -0700)]
Merge pull request #373 from QuickJack/master
Removed a number of warnings
Alan McGovern [Wed, 4 Jul 2012 14:42:17 +0000 (15:42 +0100)]
[Microsoft.Build.Tasks] Remove an overly verbose informational message
This warning really pollutes the monodevelop build, so lets nuke it
for now.
Alan McGovern [Sun, 1 Jul 2012 20:37:03 +0000 (16:37 -0400)]
[Microsoft.Build.Tasks] Fix some simple caching to improve build times
Large projects now have significantly less overhead when calculating
assembly references and referencing gac assemblies.
QuickJack [Wed, 4 Jul 2012 14:09:47 +0000 (16:09 +0200)]
Applied Marek's suggestions so remove CS0067 from certain event handler declarations
Marek Safar [Wed, 4 Jul 2012 11:49:01 +0000 (04:49 -0700)]
Merge pull request #376 from atomia/master
Allow parsing of config files for for enterprise library.
Thorsten Tarrach [Wed, 4 Jul 2012 11:46:34 +0000 (13:46 +0200)]
Not validating if null value is null
This allows parsing of enterprise library config extensions and is in line with the way MS .net handles things.
Marek Safar [Wed, 4 Jul 2012 11:30:47 +0000 (04:30 -0700)]
Merge pull request #375 from atomia/master
Improved exception messages in case of configuration errors
Thorsten Tarrach [Wed, 4 Jul 2012 09:37:05 +0000 (11:37 +0200)]
Improved error messages so that it becomes clear where configuration errors come from
Marek Safar [Wed, 4 Jul 2012 07:11:36 +0000 (00:11 -0700)]
Merge pull request #372 from JamesB7/system-security5
Implemented DiscretionaryAcl and SystemAcl except for RemoveAccess
QuickJack [Tue, 3 Jul 2012 20:54:31 +0000 (22:54 +0200)]
Fixes a number of warnings in System.Windows.Forms.dll
James Bellinger [Tue, 3 Jul 2012 19:32:49 +0000 (15:32 -0400)]
Implemented SystemAcl. Common shared functionality moved to CommonAcl. Only missing implementation now is RemoveAccess/RemoveAudit.
Unit tests included - for SystemAcl they are based on DiscretionaryAcl's mostly,
with one extra and one somewhat changed since AuditFlags merge together unlike Allow/Deny.
Anyway, it should be practical to implement CommonSecurityDescriptor and friends with these classes working.
QuickJack [Tue, 3 Jul 2012 18:38:53 +0000 (20:38 +0200)]
Fixes a number of warnings in System.Web.dll
James Bellinger [Tue, 3 Jul 2012 17:56:55 +0000 (13:56 -0400)]
Implemented all of DiscretionaryAcl except for RemoveAccess. Unit tests are included.
Also fixed:
CommonAcl's merging now filters out AceFlags.InheritedFlags when !IsContainer.
For matching AccessMask, CommonAcl will now correctly merge ContainerInherit and ObjectInherit.
GenericAcl's SyncRoot is now virtual as per spec.
SecurityIdentifier.CompareTo throws ArgumentNullException, not NullReferenceException, on null parameter.
Miscellaneous unit tests:
Verify that RawAcl throws for negative capacity.
Marek Safar [Tue, 3 Jul 2012 08:14:46 +0000 (01:14 -0700)]
Merge pull request #370 from sblom/master
Needed to add more precise checking of dimensions on array initializers
Marek Safar [Tue, 3 Jul 2012 07:23:40 +0000 (00:23 -0700)]
Merge pull request #369 from JamesB7/system-security4
Completely implemented System.Security.AccessControl.CommonAcl
Scott Blomquist [Tue, 3 Jul 2012 06:56:21 +0000 (23:56 -0700)]
Fix dimension checking for array initializer expressions
James Bellinger [Tue, 3 Jul 2012 03:35:14 +0000 (23:35 -0400)]
Bug fix: Merging occurs after sorting ACE groups by SecurityIdentifier not before. Added a unit test for this behavior.
Also, fixed the namespace for the ObjectAce unit test.
James Bellinger [Tue, 3 Jul 2012 02:56:31 +0000 (22:56 -0400)]
CommonAcl is now essentially fully functional. Its descendants DiscretionaryAcl
and SystemAcl need work, but CommonAcl can be manipulated using RawAcls nicely
now and will test canonicity, merge ACEs, remove meaningless ACEs, sort explicit
deny/allow ACEs by SecurityIdentifier... all the nice things CommonAcl is supposed
to do.
Anyway, this patch... Off the top of my head...
Fixed CommonAce and ObjectAce deserialization/roundtripping with opaque data.
Fixed ObjectAce having the wrong BinaryLength depending on ObjectAceFlags.
GenericAce had two protected static SDDL methods which should be internal.
Added some unit tests for the above. One of the tests compares the binary
output with a blob I produced using the *same unit test* on MS.NET (with a
File.WriteAllText creating the byte array to paste in, naturally), and
happily, it produces identical binary output. Very nice.
James Bellinger [Mon, 2 Jul 2012 23:55:09 +0000 (19:55 -0400)]
SecurityIdentifier's CompareTo now works like MS.Net. CommonAcl is supposed to sort groupings of canonical ACEs using SecurityIdentifier's CompareTo, so this was important to do.
I determined the behavior of CompareTo by first writing unit tests for
CommonAcl (instantiated as DiscretionaryAcl but using RawAcl instead of
DiscretionaryAcl methods to do the manipulation to keep DiscretionaryAcl
out of the loop). I developed and ran these unit tests on MS.NET using
MonoDevelop...
Anyway, CompareTo appears to compare authority, then the *number* of
subauthorities, and lastly the subauthorities. I'd be curious if there
is more detail, but so far this seems to cover it. It's definitely
*not* just a comparison of the string.
This patch also modifies CommonAcl to take advantage of this new sorting,
so now it should sort groups of explicit ACEs (access deny, access allow)
in canonical ACLs correctly.
With that down, I've got two unit tests that still fail on Mono.
James Bellinger [Mon, 2 Jul 2012 18:16:01 +0000 (14:16 -0400)]
Implemented much of CommonAcl.cs
Some tests still fail because sorting is not implemented yet.
I'll need to alter SecurityIdentifier CompareTo.
Rodrigo Kumpera [Mon, 2 Jul 2012 20:51:49 +0000 (17:51 -0300)]
Add new gc options to the man page.
Rodrigo Kumpera [Mon, 2 Jul 2012 20:33:15 +0000 (17:33 -0300)]
Add two heap growth knobs: save-target-ratio and default-allowance-ratio.
Rodrigo Kumpera [Mon, 2 Jul 2012 19:55:32 +0000 (16:55 -0300)]
Simply a bit the memgov code. Kill a duplicated header declaration.
Rodrigo Kumpera [Mon, 2 Jul 2012 18:53:41 +0000 (15:53 -0300)]
Fix allowance calculation and introduce a constant in place of a magic number.
* sgen-conf.h: Introduce SGEN_DEFAULT_SAVE_TARGET_RATIO tunnable.
* sgen-memory-governor.c: Fix allowance calculation to use the
right size of the los space.
Rodrigo Kumpera [Mon, 2 Jul 2012 18:07:32 +0000 (15:07 -0300)]
Extract the nursery allowance heuristics to a memgov API.
Rodrigo Kumpera [Mon, 2 Jul 2012 15:32:36 +0000 (12:32 -0300)]
Move the sgen_*_os_memory APIs to memgov.
Rodrigo Kumpera [Mon, 2 Jul 2012 15:32:02 +0000 (12:32 -0300)]
Use new atomis with allocated_heap.
Rodrigo Kumpera [Mon, 2 Jul 2012 15:22:04 +0000 (12:22 -0300)]
Add SGEN_ATOMIC_ADD_P for pointer sized integers.
Rodrigo Kumpera [Fri, 29 Jun 2012 15:25:37 +0000 (12:25 -0300)]
Add some FIXME.
Rodrigo Kumpera [Thu, 21 Jun 2012 13:45:31 +0000 (10:45 -0300)]
Move the heap limits code to the memgov file.
Rodrigo Kumpera [Wed, 20 Jun 2012 18:51:52 +0000 (15:51 -0300)]
Add new memory governor files.
Martin Baulig [Mon, 2 Jul 2012 18:42:21 +0000 (20:42 +0200)]
Fix #5169: Environment.ExpandEnvironmentVariables().
Martin Baulig [Mon, 2 Jul 2012 17:06:43 +0000 (19:06 +0200)]
Re-enable CSharpCodeProviderTest on the Mac.
I just had a look at these and can't reproduce the problem anymore,
these tests are now working fine on my Mac.
This reverts commit
58ae80aa5e28610c26cb7472e58e156b1db6735b.
Martin Baulig [Mon, 2 Jul 2012 16:52:40 +0000 (18:52 +0200)]
WebRequestTest.cs: Add workaround for t-online.de's DNS server.
Martin Baulig [Mon, 2 Jul 2012 16:42:24 +0000 (18:42 +0200)]
DnsTest.cs: Add workaround for t-online.de's DNS server.
Martin Baulig [Mon, 2 Jul 2012 16:31:56 +0000 (18:31 +0200)]
Fix go-mono.com's IP address in DnsTest.cs.
go-mono.com has 50.21.183.68, not 74.208.222.19.
Rodrigo Kumpera [Mon, 2 Jul 2012 14:20:43 +0000 (11:20 -0300)]
Use isfinite instead of finite as newer xcode removed it.
Rodrigo Kumpera [Mon, 2 Jul 2012 14:17:08 +0000 (11:17 -0300)]
Merge branch 'master' of github.com:mono/mono
Rolf Bjarne Kvinge [Mon, 2 Jul 2012 13:42:58 +0000 (15:42 +0200)]
Make mkbundle bundle assemblies a lot faster.
Preallocate the 256 different lines we might write to the assembly file
instead of allocating several strings for every line.
With compression mkbundle is about twice as fast now (since compression
speed hasn't changed), without compression it's 5-10x faster, depending
on the number of assemblies to embed.