Commit Graph
1744 Commits
Author SHA1 Message Date
Augustin Cavalier 5ffbe7d778 Change all references to "__INTEL__" to "__i386__".
They are functionally identical, but the former is a BeOS/Haiku-specfic
macro that we include in the compiler specs, and the latter is defined
by GCC.
2019-03-30 16:54:01 -04:00
Augustin Cavalier 1e60bdeab6 Remove all invocations of SetSubDirSupportedPlatformsBeOSCompatible. 2019-03-30 15:19:38 -04:00
Augustin Cavalier b357daa5c5 build: Deprecate SetSubDirSupportedPlatformsBeOSCompatible.
By default, all targets support the "haiku" platform, and we no longer
support building for BeOS, Dan0, Zeta, or other BeOS-compatible targets,
so this is no longer needed.

Also remove all references to the non-Haiku compatible platforms, and
change all BEOS_COMPATIBLE checks to HAIKU_COMPATIBLE. Removal of
all SetSubDirSupportedPlatformsBeOSCompatible invocations
will be in the next commit.
2019-03-30 14:54:14 -04:00
Augustin Cavalier a1c2d3d653 uptime: Remove, in favor of the coreutils one.
This one had an uncertain "freeware" license, and the code quality
is not so great. BeOS didn't have an 'uptime' command, so we can
replace this with the coreutils one without worry.
2019-03-30 13:47:14 -04:00
Lee Mon d04d9b2519 BugFix 2: fix errors found by cppcheck
Change-Id: I262af4dcf3ad1dca9d7e7d88838ae90323303c1d
Reviewed-on: https://review.haiku-os.org/c/1294
Reviewed-by: waddlesplash <[email protected]>
2019-03-16 17:28:06 +00:00
Jérôme Duval 29ec639a6d ltrace: implement x86_64 arch specifics.
fix trace build on x86_64

Change-Id: I205bd9eee03efea9e298c2877cc0a6440770caf0
Reviewed-on: https://review.haiku-os.org/c/1148
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2019-03-07 02:51:50 +00:00
François Revol f82b4294d8 urlwrapper: add support for binary plist webloc files
Quite hardcoded but it works.

We only support URLs shorter than 256 bytes as it's the only samples I have.
2019-03-06 04:54:56 +01:00
Andrew Lindesay 52a61976d4 pkgman: fix for syntax (help)
The tool "pkgman" was not showing it's help text
and this seems to be somehow related to the
initialization of constants such as
"kCommandCategoryPackages"; these values seems to
be coming through as empty-string for some reason.
I am changing those to be "#define" of regular
C-Strings and this seems to resolve the problem.
These values only seem to be used to group the
possible commands for production of the syntax or
help text - there do not seem to be any deeper
impacts beyond that functionality.

Change-Id: If9cd61462cd7f1f1b5ab2ece521bb3f00a1ba246
Reviewed-on: https://review.haiku-os.org/c/1139
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2019-03-03 20:24:54 +00:00
François Revol 2c73537c43 Add a catarea bin tool
Untouched as of 2004, can be useful sometimes.
2019-03-02 13:37:23 +01:00
Rob Gill 897792ef3f pkgman: Perform URL format validation Bug #13786
* Tests for validity of supplied URL before attempting to add it

   BUrl's isValid() is used to test the URL

Change-Id: I49bfc266177f16052a46ca3dbc1fd6e8dd1ab6ae
Reviewed-on: https://review.haiku-os.org/c/1020
Reviewed-by: Jérôme Duval <[email protected]>
2019-02-08 07:33:26 +00:00
Adrien Destugues 7232789211 Extract parse_size function from ramdisk command.
Change-Id: If7dd36321e1ed2feb20b4c76ddaf303bc997d8b7
Reviewed-on: https://review.haiku-os.org/c/1018
Reviewed-by: Jérôme Duval <[email protected]>
Reviewed-by: Axel Dörfler <[email protected]>
2019-02-08 07:19:26 +00:00
Augustin Cavalier 475172337b headers/kernel: Move B_WAIT_TILL_LOADED to a syscall header.
It is only used as an argument to _kern_load_image directly, not to
any of the load_image functions in image.h, so it belongs in a syscall-
specific header like other such constants.

No functional change intended.
2019-02-01 19:45:56 -05:00
Murai Takashi ef916ff3b5 bin/multiuser: Fix PVS 1809 and 1896
Replace memset() with explicit_bzero(), since compiler could delete
memset() funnction call.

Change-Id: I6d6ad991951f516cf94b6fdf1772715ef4a42822
Reviewed-on: https://review.haiku-os.org/c/880
Reviewed-by: waddlesplash <[email protected]>
2019-01-21 15:52:19 +00:00
Augustin Cavalier 753c7e0805 freebsd11_wlan -> freebsd_wlan.
FreeBSD 12's net80211 layer contains only 2 small KPI breaks from FreeBSD 11,
so we can upgrade it, apply those 2 changes to the drivers which are affected
(as the changes are in some lesser-used functions), and then upgrade all drivers
one at a time.
2019-01-07 20:17:51 -05:00
Rob Gill 3987287dc6 bin/sysinfo: bugfix & update
Fixed bug where incorrect value of ECX passed when determining L2 cache

Updated cache/TLB identification
Updated CPU flags

Change-Id: I086f8bf7f86cba0d65e45450c74ec6e11e6bec2e
Reviewed-on: https://review.haiku-os.org/824
Reviewed-by: Adrien Destugues <[email protected]>
2019-01-04 19:05:49 +00:00
Adrien Destugues d52d36aa5d open: don't print "invalid argument" when opening an URL.
Reset the error code.

Change-Id: I5b58c3082f5758d4cbca8c9706048e3414f939c9
Reviewed-on: https://review.haiku-os.org/807
Reviewed-by: waddlesplash <[email protected]>
2019-01-01 17:48:29 +00:00
Augustin Cavalier dba28784c2 freebsd11_network -> freebsd_network.
FreeBSD 12 has no major changes to the ifnet KPIs that constitute a
source compatibility break, save a single one related to locking
which doesn't really apply to us, and so we don't need to create
a "freebsd12_network" directory to work through the upgrades.
2018-12-24 19:49:35 -05:00
Augustin Cavalier 514bace91d keymap: Allocate BApplication on the heap.
Avoids triggering an assert at program exit.
2018-12-16 19:35:04 -05:00
Murai Takashi e000ae2c88 bin/notify: Fix PVS 741
Fix 'bitmap' is assigned values twice successively.

Change-Id: I02d70a581a682607f6ed280b71cc33c54738b343
Reviewed-on: https://review.haiku-os.org/766
Reviewed-by: Adrien Destugues <[email protected]>
2018-12-14 22:52:42 +00:00
Murai Takashi b63646d69c bin/trash: Fix PVS 787
Fix 'err' is assigned values twice successively.

Change-Id: I783094dacbd99880381d0359c66359177611506e
Reviewed-on: https://review.haiku-os.org/746
Reviewed-by: Adrien Destugues <[email protected]>
2018-12-02 21:31:26 +00:00
Augustin Cavalier 8732e626e2 pkgman: Handle -y argument to "drop-repo" command.
Found by -Werror=set-but-unused.
2018-11-23 18:00:08 -05:00
Augustin Cavalier d113c00b5a Remove more HOST_PLATFORM_SUNOS cruft. 2018-11-23 16:29:57 -05:00
Murai Takashi 81728c84c5 modifiers: Fix PVS 743
Fix  'gotone' is assigned values twice successively.

Change-Id: Ibe9f531ba4d16cec61b49cc49e842486b5ab6f64
Reviewed-on: https://review.haiku-os.org/700
Reviewed-by: Adrien Destugues <[email protected]>
2018-11-22 15:22:19 +00:00
Zoltán Mizsei 9f2e5521fa Signature have to match in rdef and sources.
Change-Id: I4172585fab51e9d9640ae7a40b5b9c3a247fb841
Reviewed-on: https://review.haiku-os.org/711
Reviewed-by: waddlesplash <[email protected]>
2018-11-18 17:45:24 +00:00
Niels Sascha Reedijk e980073d22 Clarify desklink translatable
Change-Id: Ia36e44ae4c6fec37694712dd1388cd1abb867f31
Reviewed-on: https://review.haiku-os.org/712
Reviewed-by: waddlesplash <[email protected]>
2018-11-18 17:44:13 +00:00
Humdinger 1eb0122fc7 pkgman: a bit more detail on usage
I forgot that there are special usage texts for the individual
pkgman commands. Make that a bit clearer in the usage text now.

Change-Id: Ia6641b2aa20d03a67d9dedddabf3a1f34d324322
Reviewed-on: https://review.haiku-os.org/702
Reviewed-by: waddlesplash <[email protected]>
2018-11-16 16:11:50 +00:00
Murai Takashi f54b080275 fwcontrol: Fix PVS 1655
Fix char pointer *nodestr was compared with the '\0' value.

Change-Id: Ie6b0beb8b94b35d6824ab205688ce1a54bcd6a74
Reviewed-on: https://review.haiku-os.org/688
Reviewed-by: Adrien Destugues <[email protected]>
2018-11-15 19:14:19 +00:00
Adrien Destugues 0ca6ba69fa screenmode: remove leftover debug print. 2018-11-09 20:29:35 +01:00
Axel Dörfler efafab643c Deskbar: Resizable tray
* Adds max width and height arguments to
  instantiate_deskbar_(item|entry).
* Old applications just stay with a 16x16 scaled icon, though.
* All used apps within the repository are converted to the new call
  besides the input_server input method icon (that will need further
  API changes in the input_server).

Change-Id: I29cc439396917be2c24135888459d31364997dff
Reviewed-on: https://review.haiku-os.org/656
Reviewed-by: waddlesplash <[email protected]>
2018-11-04 19:00:49 +00:00
Adrien Destugues 22e03e588e Allow to change brightness from the command line
screenmode can now set the brightness (only for intel_extreme, still).
Both absolute and relative values are accepted, allowing to bind
keyboard shortcuts to "increase brightness" and "decrease brightness".

Change-Id: I5221532ebdfba5df1b4d4e1f3331406359f2807c
Reviewed-on: https://review.haiku-os.org/655
Reviewed-by: Kacper Kasper <[email protected]>
2018-11-03 15:51:08 +00:00
Axel Dörfler 49135c955b desklink: Replaced muted speaker icon with stippi's version
* Replaced the muted speaker icon with a new one, thanks Stephan!
* Moved speaker icons into resources.
2018-11-03 14:07:00 +00:00
Kacper Kasper 3bac8deff6 Add -a option to locale utility
* Required by POSIX.

Change-Id: Ided0a9d45d5edd00f3aa6279e99ca486ca372f6c
Reviewed-on: https://review.haiku-os.org/651
Reviewed-by: Adrien Destugues <[email protected]>
2018-11-02 14:25:57 +00:00
Augustin Cavalier 49783dc8f2 strace: Gracefully handle invalid syscall numbers.
OpenJDK 1.8 somehow manages to trigger this. Before this commit it would
just attempt to read past the end of the vector, which of course segfaulted,
which seems to imply nobody has run into this case before.
2018-11-01 20:51:05 -04:00
Alexander von Gluck IV 5025c781eb ltrace: Add x86_64 stub Jamfile. Tired of that jam warning.
Change-Id: Idbd7ddae5773f85a1c46aa72e1dac0c28f9320c1
2018-10-28 10:54:08 -05:00
Barrett17 f9fc949439 MediaTest: Use MediaDebug.h 2018-10-24 16:12:05 +02:00
Jessica Hamilton 1f96a3cbde system/boot: Add support for multiple bootloaders 2018-10-17 14:47:46 -05:00
Murai Takashi f7989c0226 Correct comment
Change-Id: I529322e5862bc731ce1775a046ec21106e14c352
Reviewed-on: https://review.haiku-os.org/629
Reviewed-by: waddlesplash <[email protected]>
2018-10-15 14:22:58 +00:00
Augustin Cavalier 45bc01d2f7 ifconfig & Network preferences: Actually trigger scans using BNetworkDevice.
Fixes #12034, and a variety of other strange "no wireless networks
appear" bugs that have plagued Haiku for years.

Change-Id: I734cb8084e8a626b8e03511519609bf80c1559eb
Reviewed-on: https://review.haiku-os.org/552
Reviewed-by: waddlesplash <[email protected]>
2018-09-13 04:13:19 +00:00
Augustin Cavalier 21e99b4766 pkgman: Suppress the erroneous "aborted: No Error" messages on no internet.
Here's what happens:
 * BPackageManager created a BRefreshRepositoryRequest with a BContext
   of an empty DecisionProvider and itself.
 * Since there is no internet access, the FetchFileJobs that the refresh
   class queued fail. Specifically, the first one does, but then as the
   subsequent ones depend on it, they are all aborted.
 * As some jobs were aborted, the StateListener is notified.
 * The state listener of course has the BPackageManager class as one of
   the listeners, and so calls it, because even though the handler methods
   of BRefreshRepositoryRequest, they are powerless to stop event propagation.
 * The BPackageManager's highest subclass' implementation gets called, which is
   of course pkgman's.
 * pkgman decides to DIE() upon receiving word that a job was aborted.

There are thus four potential solutions to this issue:
 * Rewrite the package kit's event & job handling systems to not be so
   screwed up in terms of propagation. Seriously, there is way too much
   stuff that we send to the "user" in here, and as you can see, it can
   get *extremely* convoluted even for supposedly "simple" tasks. This
   is probably the best "long-term" solution; but obviously is far too
   involved for the present.
 * Only partially rework event handling; specifically in the SupportKit to
   allow JobStateListeners to stop further propagation. This is probably
   the best "medium-term" solution.
 * Do not pass the package manager as the JobStateListener to the
   RefreshRepositoryRequest. This would have the downside that the
   regular notifications about download state, etc. would not be returned
   at all, which we don't want. We could make a shim ... but that would be
   a lot of code for little benefit. The prior solution makes more sense.
 * Completely ignore "JobAborted" notices in pkgman. In fact, this is the
   solution that virtually all other consumers of this API take (although
   some of them seem to have TODOs about it), including package_daemon,
   HaikuDepot, etc., and so it's the one I've taken here. If a "job aborted"
   error is actually fatal, then it's the Package Kit's problem.

Fixes #13075.
2018-09-11 01:32:59 -04:00
Augustin Cavalier 7985831a65 bin/multiuser: Do not exit with an error if stdin is not open.
As the comment says, there are a number of scenarios when this is
the case, e.g. non-interactive SSH sessions.

Change-Id: I3a10043820039f344b3f036f7861c81f6fb7ef05
Reviewed-on: https://review.haiku-os.org/499
Reviewed-by: waddlesplash <[email protected]>
2018-08-28 23:34:27 +00:00
Jérôme Duval 81375d4fbb Package Kit: add Zstd compression.
Change-Id: Idbdb7cf1bde659046a88ea69a76e3b5fc4cd7013
Reviewed-on: https://review.haiku-os.org/323
Reviewed-by: Adrien Destugues <[email protected]>
2018-08-11 23:10:00 +00:00
Augustin Cavalier 1e29bfd7d8 Update all remaining consumers of the FreeBSD compat headers. 2018-07-18 20:10:04 -04:00
Andrew Lindesay 3b17d8dd7f HaikuDepot / PackageKit: Repositories 'Identifier' URL
Repositories are identified with a 'url' in the
remote 'repo.info' file.  There is also a
'base url' which is the URL locally with which
the system is able to access the repository
data on.  There is some confusion between these
two terms in the source.  This change aims to
separate the two out and consistently name them.
The settings for the repository locally also was
not storing these values and that has been fixed.
Debug info about the repositories also did not
display the two urls consistently and will now
also do so.  Finally, HaikuDepot now correlates
locally configured repositories with the data in
HaikuDepotServer using the identifier URL; this
makes the use of mirrors with HaikuDepot possible.

Fixes #13888
Change-Id: I66dfe589b05c24e1ab123a6945352e0f24b60bf1
2018-07-05 20:06:54 +00:00
Augustin Cavalier a309b7c3a1 bin: Clang warning fixes.
* Functions that call exit() should return void
 * char* -> const char*
 * main returns int, not bool.
2018-06-18 23:18:34 -04:00
Murai Takashi b08627f310 Fix catching polymorphic type by value
Replace catching polymorphic type std::bad_alloc 'by value'
with 'by reference'.
Pointed by gcc8
2018-05-16 13:49:46 +00:00
Philippe Houdoin 91077c485a /bin/shutdown: fixed bug, was returning non zero even on shutdown
success. Spotted by mcandre, thanks!
2018-05-03 12:22:45 +02:00
Axel Dörfler a77aa747ea launch_daemon: Added basic logging facility
* The daemon now stores many events in am internal log.
* You can use "launch_roster log" to retrieve it.
2018-04-25 10:10:43 +02:00
Fredrik Holmqvist aa2c061c3d cppcheck: Shifting 32-bit value by 63 bits is undefined. 2018-04-22 11:47:15 +02:00
Barrett17 80e9e5f3e7 Add new tests to MediaTest 2018-04-06 02:33:26 +02:00
François Revol 4498948fcf recover: Work around use-after-free
Inode::_FindPath() always deletes the inode it uses regardless
the source, including when it's from the HashtableInodeSource.

But the later returned the inode object directly from the hashtable
when it's inside, so it gets deleted bu _FindPath… then reused later on
when searching the hashtable again.

I'm not sure it's the correct solution but at least malloc_debug doesn't
complain anymore.
2018-03-27 23:14:32 +02:00