54905 Commits

Author SHA1 Message Date
Adrien Destugues
d3b6b9e5f7 BSecureSocket: use "trusted first" validation algorithm.
* This makes it work with the new ca_root_certificates package.

Fixes #12004.
hrev49800
2015-11-10 09:22:02 +01:00
Adrien Destugues
5d9674b2f8 Update OpenSSL to 1.0.2.
* The dependency declarations were broken in previous versions, so all
  packages depending on OpenSSL need to be rebuilt with the proper
  dependency on the libs (1.0.0 and not 1.0.0r or similar).
* I have confirmed that this version works fine in a running Haiku
  install (so the problems affecting the initial 1.0.1 port are fixed).
* OpensSL 1.0.2 can be used with a current ca_root_certificates package,
  so also update that.
2015-11-10 09:19:46 +01:00
Axel Dörfler
93c0a5d790 Reworked little endian bitfields a bit.
* Added B_ prefix.
* Renamed 16 bit variants to B_LENDIAN16_*.
* Added 32 bit variants (albeit only 16 of them for now).
* Adjusted headers that were using them.
hrev49799
2015-11-10 08:47:48 +01:00
Michael Lotz
ab306fb8f5 BPathMonitor: Fix locking order reversal introduced in 8599f4b.
The sLocker was used as an outer lock with the sLooper locked within.
The sLocker therefore can't be used within MessageReceived() as that
could lead to deadlocks due to reversal of the locking order.

Instead of two locks, just use locking the looper for all serialization.
While this has a higher overhead to using a BLocker (due to the looper
list locking and lookups) this shouldn't be too problematic.
hrev49798
2015-11-09 23:11:57 +01:00
Jonathan Schleifer
82f5db2e26
More libunwind compilation fixes hrev49797 2015-11-09 20:00:06 +01:00
Jonathan Schleifer
ab1ac5930b
Fix a typo hrev49796 2015-11-09 19:56:38 +01:00
Jonathan Schleifer
8e3c9301d9
Add Jamfile for x86 libunwind hrev49795 2015-11-09 19:06:11 +01:00
Jonathan Schleifer
7a541d13ed
Some progress towards libunwind compiling
* Add main Jamfile
 * Add x86_64 Jamfile
 * Add config.h for Haiku
 * Add defines missing from elf.h
 * Don't include some missing files
hrev49794
2015-11-09 18:16:08 +01:00
Jonathan Schleifer
18941b085c
Import libc++ hrev49793 2015-11-09 18:02:17 +01:00
Jonathan Schleifer
f2c0917eea
Import libcxxrt 2015-11-09 18:01:58 +01:00
Jonathan Schleifer
d77787f2a4
Import libunwind 2015-11-09 18:01:42 +01:00
Jonathan Schleifer
0e2547a80d
Import lib/Headers from Clang 2015-11-09 18:01:18 +01:00
Adrien Destugues
3df0df95cd get_package_dependencies: catch and report exceptions
The package kit uses exceptions for error handling, but this tool didn't
catch them so all we got in case of error is "Abort" on the error
output.

Now, the exceptions are caught and reported with the complete error
message.
hrev49792
2015-11-09 12:58:51 +01:00
Adrien Destugues
55af491fde BUrlContext: fix logic reversal in certificate comparison
The Predicate for BObjectList::FindIf must actually be a difference
operator, and return 0 if there is a match.
hrev49791
2015-11-09 11:13:00 +01:00
Adrien Destugues
4849ab6c8b BHttpRequest: add SSL certificate exception management.
When an HTTPS request uses an SSL certificate that OpenSSL considers
untrusted, and the user decides to continue anyway, add the certificate
to an exception list. Match certificates against this list and don't ask
the user again if they are already there.

Fixes #12004. Thanks to markh for the initial patch and peeking into the
WebKit code!
hrev49790
2015-11-09 10:46:58 +01:00
Adrien Destugues
f26dbfe79b BCertificate: build fix. hrev49789 2015-11-09 00:15:19 +01:00
Adrien Destugues
6c32f50a64 BCertificate: fixup the API
* Add an operator== and a copy constructor
* Make the getters const so they are easier to use
hrev49788
2015-11-08 23:47:29 +01:00
Michael Lotz
ba307a12db vfs: Cleanup: Move functions around for more logical grouping.
Move static internal functions out of the API functions block and drop
their vfs_ prefix and move an API function into the API functions block.
hrev49787
2015-11-08 22:31:56 +01:00
Michael Lotz
c73d13015d kernel: Use anonymous namespaces to avoid type collisions.
The anonymous namespace makes type definitions local to the translation
unit (like static does for objects). For pretty much any type not shared
across multiple files this is what one wants to happen (and might
erroneously expect to happen automatically).

This commit solves some actual collisions that were present:

* The VFS and the rootfs both used an incompatible VnodeHash struct for
  their BOpenHashTable.
* XSI semaphores and message queues both used queued_thread, Ipc and
  IpcHashTableDefinition.

For release builds these did not cause problems as the types were fully
inlined. Debug builds would crash at boot however because parts of a
BOpenHashTable<VnodeHash> from the rootfs meant to operate on struct
rootfs_vnode would be applied to one from the VFS expecting struct
vnode.

As such collisions are violations of the one definition rule, the code
is at fault and unfortunatley the compiler isn't required to diagnose
such problems across translation units (which isn't actually trivial).
This can lead to subtle and hard to debug problems and it's therefore
best to avoid leaking types into the global namespace whenever possible.
2015-11-08 22:31:56 +01:00
Jonathan Schleifer
c6fb0e2c4d
configure: Disable Clang's integrated assembler
We have too much code that doesn't work with it yet and it makes more
sense to get the other parts working with Clang first.
hrev49786
2015-11-08 22:11:28 +01:00
Joseph R. Prostko
8719963f48 Add packages for Fossil 1.34 hrev49785 2015-11-08 15:27:19 -05:00
Jonathan Schleifer
bfe60c1e5a
Don't define __ARM*__ for Clang
I have a patch for Clang ready that I will upstream instead.
hrev49784
2015-11-08 16:38:57 +01:00
Jonathan Schleifer
f7ededa623
shell.S: Add .section .bss to make Clang happy hrev49783 2015-11-08 16:30:40 +01:00
Jonathan Schleifer
50a1d86c88
byteorder.S: Use flds instead of fld
Clang refuses to guess.
2015-11-08 16:27:31 +01:00
Jonathan Schleifer
a7bddff13e
configure: Cleaner way for --use-clang hrev49782 2015-11-08 16:00:14 +01:00
Axel Dörfler
f0e23c2b9b launch_daemon: Fixed missing Event member initialization.
* This fixes targets starting seemingly unconditionally.
hrev49781
2015-11-08 11:41:01 +01:00
Axel Dörfler
f761076be5 launch_daemon: Fixed DemandEvent::ToString().
* Reported "event" instead of "demand".
2015-11-08 11:41:01 +01:00
Adrien Destugues
60572cc8d0 Add a MIME type to network_settings add-ons
* This is required for localization to work.
hrev49780
2015-11-08 09:28:34 +01:00
Adrien Destugues
7218744e73 Network preferences: missing translations.
* Some files with localized items were not added to the jamfile.
2015-11-08 09:22:13 +01:00
François Revol
c4ad6501bc googlefs: provide get_vnode_name
This works around the VFS bug I just fixed. :D
hrev49779
2015-11-08 04:48:51 +01:00
François Revol
3d58615e3a googlefs: make the close/free hooks more robust 2015-11-08 04:48:48 +01:00
François Revol
2e04b3a2b9 googlefs: fix a possible race condition 2015-11-08 04:48:45 +01:00
François Revol
747e0ba247 googlefs: typo 2015-11-08 04:48:42 +01:00
François Revol
5aeaaebad9 googlefs: fix parsed urls
we now get relative URLs it seems...
2015-11-08 04:48:40 +01:00
François Revol
02487f3c4b googlefs: fix parsing 2015-11-08 04:48:37 +01:00
François Revol
26b35e649f googlefs: force disabling HTTP redirection from Google
We don't really handle HTTP REDIRECT...
2015-11-08 04:48:34 +01:00
François Revol
49d3cc2a78 googlefs: error handling
Damn this code is ugly!

Also dump the header we get to /tmp
2015-11-08 04:48:31 +01:00
François Revol
25472bc40a googlefs: update default Google server 2015-11-08 04:48:28 +01:00
François Revol
c518435bb1 VFS: pass correct vnode to fs calls in default get_vnode_name
The opendir and closedir/free_dircookie hooks were called with
mismatched vnode. It seems only googlefs is actually affected by this,
since all other fs without a get_vnode_name just don't are about the
passed vnode arg to closedir and free_dircookie.

Now I should really get some sleep!
hrev49778
2015-11-08 04:32:57 +01:00
François Revol
8f4a653ca6 VFS: typo 2015-11-08 04:32:57 +01:00
Jonathan Schleifer
93bcaf3650
arm/arch_exceptions.S: Replace spsr_all with spsr
After a quick look at binutils, they seem to be equal, however, Clang
does not accept the _all one.
hrev49777
2015-11-08 00:59:18 +01:00
Jonathan Schleifer
15d594cccd
ARM: Add __aeabi_memset and __aeabi_memmove alias hrev49776 2015-11-08 00:54:32 +01:00
Jonathan Schleifer
d8548e00aa
Fix some more type mismatches with std::{min,max} hrev49775 2015-11-08 00:44:18 +01:00
Jérôme Duval
6c4cca34c2 glibc: replace extern __inline with __extern_always_inline for x86.
* also update __atan2l for x86, update __FAST_MATH sections.
hrev49774
2015-11-08 00:38:20 +01:00
Jérôme Duval
7ccbb2f03f Add operator delete(void *, size_t) for C++14. 2015-11-08 00:38:20 +01:00
Jérôme Duval
b49dd60c46 Drop namespace std after 95d4ed6778c138150a29. 2015-11-08 00:38:19 +01:00
Jonathan Schleifer
f10b49ed41
Fixup for my last commit (better check for Clang) hrev49773 2015-11-08 00:37:13 +01:00
Axel Dörfler
7406866340 launch_roster: The beginnings of a launch_daemon control tool. hrev49772 2015-11-08 00:09:26 +01:00
Axel Dörfler
b0ecbc13f0 launch_daemon: Refactored some message handlers, more info.
* The info getters will now add a lot more info.
2015-11-08 00:09:26 +01:00
Jonathan Schleifer
f2f1efc509
Use -no-integrated-as to create asm struct offsets
This depends on quite a nasty hack to generate those, namely using
inline assembly to generate a file with things that are not actually
assembly, which Clang therefore filters out.
hrev49771
2015-11-08 00:04:16 +01:00