Commit Graph

35942 Commits

Author SHA1 Message Date
Axel Dörfler fcea1b1665 * ICMP now removes its header before passing the error on to the upper levels.
* Therefore, IPv4 no longer needs to mess with that (incorrectly, anyway).
* Removed unused include, turned off ICMP debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 14:54:24 +00:00
Adrien Destugues 82a115e8bc * BCountry : add copy constructor and assignment operator
* The locale roster uses them instead of messing with pointers, to avoid ownership problems
 * The Locale preflet works on a copy of the default country instead of altering it directly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37649 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 14:09:48 +00:00
Axel Dörfler aea00dc3bc * deliver_multicast() now returns whether or not it delivered the buffer,
instead of always returning B_OK.
* deliver_multicast() now takes the protocol restriction of a raw socket into
  account.
* raw_receive_data() now correctly returns whether a buffer was delivered (due
  to the protocol restriction, this wasn't the case before).
* ipv4_receive_data() leaked all multicast buffers.
* Some minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37648 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 13:11:58 +00:00
Axel Dörfler 1978fb81ee * First part of ICMP support: this is based on the work by Ivo Vachkov (GSoC
2007), and Yin Qiu (GSoC 2008). And even though I needed to rewrite pretty
  much all of it because of the countless bugs and problems it had, it still
  shares the same architectural problems of introducing a domain dependent
  error mechanism to the upper layers, and needing the
  net_buffer::network_header hack. This I will rework later.
* net_buffer's append_size(), and prepend_size() will now gracefully handle
  buffers without a data node.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 12:00:27 +00:00
Axel Dörfler f6a57629c3 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 11:23:42 +00:00
Axel Dörfler 866e21d3a6 * Moved DatagramSocket::Socket() up to its parent.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 11:22:54 +00:00
Adrien Destugues 5d498edbb5 * Removed registering of non-existing application as preferred for catalogs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 10:36:32 +00:00
Adrien Destugues ec9d39b1eb * Locale Roster : exclude the "gcc4" and "gcc2" folders when searching for add-ons. Avoids an useless debug message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 10:34:06 +00:00
Adrien Destugues 2aeaae9988 * Locale Roster : store an instance of BCountry instead of replicating all of its intrnals and creating instances on demand
* Locale preflet : save the time formats to the settings file if they are different from the defaut.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 10:12:59 +00:00
Ingo Weinhold 8f6bf75670 * Resize(): Resize the file cache before trying to fill the added space with
zeroes.
* Compute and propagate the check sums of the written file data to the
  underlying device.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 09:58:48 +00:00
Ingo Weinhold 83f46ed6ab file_cache_write() can get a NULL buffer and still a size != 0, which the
request handling wasn't taking into account.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 09:55:04 +00:00
Ingo Weinhold 9bc87c767b Block does now register writable blocks with Transaction. On commit
Transaction sets the check sums for the changed blocks on the underlying
device, respectively reverts them on roll-back.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 23:21:26 +00:00
Ingo Weinhold 8d591ecc41 * Added CHECKSUM_DEVICE_IOCTL_GET_CHECK_SUM ioctl.
* Added some debug output.
* CheckSumCache::_GetBlock(): Fixed incorrect check. The method could return
  an arbitrary block.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 23:16:46 +00:00
Ingo Weinhold 7514b57ebf Added Data() getter and an assignment operator getting a raw buffer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 23:14:48 +00:00
Ingo Weinhold 5520ec0ea0 Enable -Werror.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 23:13:51 +00:00
Axel Dörfler 1316462ab0 * Added some test code to make sure that we run on the boot CPU on shutdown;
I haven't tested it on the problematic machine yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 21:45:48 +00:00
Axel Dörfler 02e7b23f38 * Some ICMP test applications originally written by Yin Qiu as part of
GSoC 2008. I've reworked them a bit to let them compile without warnings
  (or at all), and give better error messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 21:20:36 +00:00
Ingo Weinhold 0f9dda9f00 Moved Block implementation to its own source file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 21:19:11 +00:00
Ingo Weinhold decde2b030 * _Free[InBitmapBlock](): Don't use Block::Discard() (block_cache_discard()).
It doesn't have the intended semantics (reverting the change). The caller
  is now expected to roll back the transaction.
* AllocateExactly(): Don't try to revert a partially successful allocation.
  The caller is expected to roll back the transaction.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 21:11:56 +00:00
Stefano Ceccherini d9fdb4f6cd Added Shell::HasActiveProcesses() and TermView::IsShellBusy() (which calls
the former) to tell if some process launched from the terminal is still
running. Some style fix in Shell.h, made a parameter const.
Added basic TermWindow::QuitRequested()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 20:38:53 +00:00
Rene Gollent 50f1e6269d Fix incorrect include. Fixes GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 18:26:45 +00:00
Matt Madia 00675cca84 Updated ICU-devel to use $(HAIKU_ICU_DEVEL_PACKAGE). No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 17:58:18 +00:00
Adrien Destugues 2d67f5fcd6 Locale preflet : make the 12/24hr switching system more robust and lossless
* When selecting chinese, the AM/PM stays at the beginning of the string
 * When clicking multiple times on the 12 hours button, the AM/PM indicator is added only once.
 * Only regression : the default format for cherokee (US) uses a 12hour clock without AM/PM indicator, so it is not possible 
to switch it to a 24Hr clock scheme.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 17:44:14 +00:00
Matt Madia ce873ef04f Added a TODO and commented+untested code for download error handling.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 17:22:02 +00:00
Ingo Weinhold 8794d8c48f * Volume::Create{File,Directory,SymLink}():
- Simplified by using the new common _CreateNode(). Changed the constructors
    slightly -- the block index is now set via a separate SetBlockIndex()
    method.
  - The block allocated for the node was not cleared. At least for directories
    that is required, though.
* Added attribute support:
  - Refactored/extended {open,create}_file() and DirCookie a bit, so they can
    also be used for attributes/attribute directories.
  - Implemented all relevant attribute FS hooks.
  - Node::DeletingNode(): Changed interface (it creates the transaction(s) as
    needed, now and doesn't return the error code anymore. The base class
    implementation frees the attribute directory, the Directory implementation
    also unlinks all entries and frees the entry tree.
* checksumfs_write_stat(): B_STAT_MODE was not handled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 17:13:34 +00:00
Ingo Weinhold 7461b83d3b Removed unused checksumfs_node::content. We use the rest of the node block
for managing the content.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 17:01:24 +00:00
Ingo Weinhold 72e9c2846a * Added flags for removing/unremoving the node.
* Added more optional notification parameters to Commit().
* Added some handy methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 16:59:53 +00:00
Matt Madia f286792113 Added ICU and ICU-devel to the list of packages that cannot be installed. ATM,
for loops aren't handled and the variables used by ICU and ICU-devel are not
parsed. Added TODO's and commented+untested code for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 16:48:21 +00:00
Adrien Destugues 0b269e50a0 * Remove an useless BBox, because BBox nesting looks just too ugly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 16:02:42 +00:00
Adrien Destugues 4b37c7f861 * Remove direct access to ICU in locale preflet, use the locale kit instead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 15:47:16 +00:00
Adrien Destugues ce0077c3cb * Following the outsourcing ofICU as an optional package, it was listed twice in AboutSystem. Thanks to RQ for noticing !
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 13:15:23 +00:00
Adrien Destugues 5421c7d682 * Fix all localized applications, as an include was missing in some of them
* dstcheck : the generated catalog is now 'dstcheck.catkeys' instead of 'en.catkeys', so that it does not conflict with 
other localized apps in the bin/ folder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 13:11:13 +00:00
Adrien Destugues fe8d7c0225 * Remove the CatalogStub class and put the Gatcatalog function directly in BLocaleRoster,
* Adjust the B_TRANSLATE macros to take this into account
 * Adjust collectkatkeys to take it into account too
Thanks to Ingo for explaining me all the technical details about hiding things in shared objects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 11:38:34 +00:00
Adrien Destugues 75e29683b2 * BeDecorator : use _InvalidateFootprint as in the default decorator.
* MacDecorator : use _InvalidateFootprint and implement _MoveBy. This makes the MacDecorator work fine again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 10:47:11 +00:00
Ingo Weinhold c6bc0bdd73 When opening the device read-write failed, retry read-only.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 08:44:30 +00:00
Ingo Weinhold 814057885c Patch by Alex Wilson:
* Added support for archiving/unarchiving.
* Coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 08:28:55 +00:00
Ingo Weinhold 12463fa891 Patch by Alex Wilson: Added archiving/unarchiving support to BSplitView.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 08:24:19 +00:00
Joachim Seemer 0462f585c2 Added Vasco Costa (gluon) to our list of translators (Portuguese). Thanks gluon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 06:51:11 +00:00
Clemens Zeidler 962281e833 Invalidate the footprint at the right time to fix the calculation of the dirty border region.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 04:33:24 +00:00
Clemens Zeidler 604ae84e46 Set look and flags at the correct position.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 01:46:58 +00:00
Clemens Zeidler 30c31ae28a Always use the current decorator. This partially fix bug #6334.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 00:58:11 +00:00
Adrien Destugues 66d288a959 * Actually set the 12/24hr clock selector depending on the date format when selecting a country.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 17:33:07 +00:00
Axel Dörfler 8d1485fa06 Work in progress commit by Atis Elsts (I'm posting his ChangeLog comments
directly here), I made only a few style changes:
* introduced 'has_broadcast_address' field in
struct net_address_module_info
 - REVIEW: the name, and the status of this field for UNIX and L2CAP
	families
* ipv6 address family support
* ipv6 address printing	
* ipv6 protocol support	
* ipv6 multicast support
  - TODO: add and remove multicast routes in a more proper way
  - TODO: support MLD
* ipv6 datalink protocol support
* icmpv6 protocol support (EchoRequest and EchoResponse messages)
* ipv6 neigbor discovery protocol support
  (Advertisement and Solicitation messages)
  - TODO: only the very basic support is present,
	the protocol state machine is by no means completed
  - TODO: replying to Solicitation does not work too good ATM
	(visible, when pinging Haiku from outside)
* added Jenkin's hash algorith
* minor changes in existing IPv4 code - cleanup function
	ipv4_get_loopback_address(), written by myself
* add tests: raw, udp, tcp/udp, mullicast sender
* add 'hoplimit' field in struct net_buffer
  - TODO: this is just a hack, more generic approach would be  better.
* add 'receive_data' function pointer in
	struct net_datalink_protocol_module_info
  - TODO: this is also more like a hack, to support information
	passing from ICMPv6 to IPv6_datagram level.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 16:55:55 +00:00
Adrien Destugues 0e23b87fe4 * Style fixes as pointed out by Ingo. Sorry !
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 16:25:40 +00:00
Adrien Destugues 3047815036 * Fix \x parsing in collectcatkeys again (thanks to Kaliber)
* Hide the CatalogStub::GetCatalog method so that if liblocalestub.a is missing from a localized image, it will not try to steal the catalog of another one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 15:47:06 +00:00
Ingo Weinhold e828231248 Added node monitoring support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 15:31:08 +00:00
Axel Dörfler cc2a443dbd Another patch by Atis Elsts:
* Added ping6 command from FreeBSD.
* tcpdump is now built with IPv6 supprt.
* added IPv6 support to route, and ifconfig (the family stuff should eventually
  be factored out).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 15:24:36 +00:00
Axel Dörfler ca83261dd6 Patch by Atis Elsts with only minor changes by myself:
* Moved ip6.h header from FreeBSD private to posix/netinet.
* Added some more IPv6 support definitions to in.h, and in6.h.
* Added icmp6.h header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 15:03:37 +00:00
Axel Dörfler 403ad05453 * Fixed warnings that occur with GCC4.4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 15:00:17 +00:00
Adrien Destugues 9253acf88d * $(HAIKU_LOCALE_LIBS) must be linked before "tracker", or else the wrong CatalogStub is used by the deskbar.
* Also fix some style problems and fix the build with APM-aware deskbar (was missing a B_TRANSLATE but did feature the closing parenthesis for it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 14:07:10 +00:00