1
0
Fork 0
Commit graph

5020 commits

Author SHA1 Message Date
Troy Campbell
e417d06289 Scan Windows release package using Microsoft Defender
Things aren't perfect, but they're the best we can do given what we're
left to work with. For example:

- We cannot update the virus signatures, because that command simply
fails, despite being copy-and-paste'd from Microsoft's documentation.

- When queried, Windows reports its virus signature age is
4,294,967,295 days old, which, on geological time scales, pre-dates
even the Pleistocene era by 9.7 million years.

Despite these issues, my hunch is that the signatures are current as of
the date when the VM's base-image was generated; and because we're in
the Holocene era of zero-day network threats, my guess is GitHub is
re-generating images at least weekly if not more frequently (and sure
enough, Defender catches the EICAR dummy virus.

Note that we're not using Start-MpScan because it does not provide any
useful output on status of scans (indeed!), so I've moved that here into
the commit message.
2020-05-04 08:06:08 +02:00
kcgen
71af263cf5 Count and limit the string-copy target's length
In this case, the target string's head-pointer is
walked forward dynamically in the prior code, where
each increment reduces the remaining string-length
that's available into which to write.

We use pointer artithmetic to count how far the head
pointer has moved from the base (subtracting that from
the available length), but also adding a safety net to
never exceed the original length if the prior
pointer-moving code were go off the rails (and exceed
the max length).
2020-05-01 17:27:47 +02:00
kcgen
e8acb7f0d7 Use C++ pointer-type casting to be more explicit
The prior C-style casts are ambiguous when it comes to
describing what type of cast is being performed. In
this case, we're changing the undering the pointer type
(from an unsigned char * to a char *), which a simple
static_cast<...> cannot do.
2020-05-01 17:27:47 +02:00
kcgen
e603337c17 Limit string copies to the target's length
This commits covers a single class of string-copy
issues, all of which involve writing an unchecked
quantity of bytes into a string of a fixed length (ie:
char[]).
2020-05-01 17:27:47 +02:00
Patryk Obara
e0ab23ad67
Add build status badge for non-x86 architectures 2020-04-29 22:05:35 +02:00
Patryk Obara
f18800760d Update allowed warnings limits 2020-04-29 21:52:03 +02:00
Patryk Obara
23f4c5bb1b Fix branding in metadata for PNG screenshots 2020-04-29 21:45:39 +02:00
krcroft
e62d903d6a AV scan the macOS package prior to upload 2020-04-29 21:04:30 +02:00
krcroft
e6311d36b8 AV scan the Linux package prior to upload 2020-04-29 21:04:30 +02:00
Patryk Obara
de3e030a4d Update documentation for --printconf and --editconf
Also, use the same order of parameters listed in man page and README
manual file.
2020-04-29 04:08:00 +02:00
Patryk Obara
4675596dcd Unify macOS configuration paths in a single location
Duplicated hardcoded path was updated in only 1 of 2 locations.

Fixes: #311
2020-04-29 04:08:00 +02:00
Patryk Obara
62a469a89b Use consistent order for GNU-style params 2020-04-29 04:08:00 +02:00
Patryk Obara
2ccae54e84 Improve --editconf option
No user expects, that editor name needs to be manually supplied, and
documentation is not clear about this either.

Add GNU-style double-dash long parameter. Unfortunately, --opt=value
style does not work with DOSBox non-standard parameter handling
implementation.

When user won't supply value for the parameter, following editors will
be tried in order:

- Program supplied via EDITOR environment variable
- nano
- vim
- vi
- notepad++.exe
- notepad.exe
2020-04-29 04:08:00 +02:00
Patryk Obara
d230e0759c Cleanup PrintConfigLocation function
Do not exit inside function, return error code instead.

Print error to stderr, and not stdout, to make life easier for users
invoking dosbox from within scripts.

Include double-dash GNU-style parameter: '--printconf'.
2020-04-29 04:08:00 +02:00
Patryk Obara
83e1a3a944 Move config dir detection earlier
Setting up configuration file location is a dependency for:

$ dosbox -printconf
$ dosbox -editconf vim
$ dosbox -eraseconf

Wee need to have cache initialized before these parameters are handled.
2020-04-29 04:08:00 +02:00
kcgen
1bd770b5b4 Cleanup and add warning count to platform build 2020-04-29 03:17:14 +02:00
Patryk Obara
d289e64291 Merge branch 'svn/trunk' r4338 2020-04-29 03:04:21 +02:00
ripsaw8080
a4edebe60e Correct cdrom sector size field length according to docs.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4338
2020-04-28 16:06:29 +00:00
krcroft
106b45ef2d Move to GitHub's v2 API when checking out
v2 will:
- Checkout over SSH
- use Git's REST API, when git is version 2.18 or newer
- No longer detaches HEAD when checking out a branch
- Fetches one-commit deep by default

When building releases where we expect full history plus tags,
we explicitly get them with `git fetch --prune --unshallow`.
2020-04-27 03:52:41 +02:00
kcgen
ec43dabba4 Enable NEON SIMD for corresponding ARM platforms 2020-04-27 03:32:26 +02:00
kcgen
2f4830830e Add nightly ARM & IBM platform builds 2020-04-27 03:32:26 +02:00
kcgen
01728f719e Drop xvfb, and add autotools for apt-repos 2020-04-27 03:32:26 +02:00
kcgen
892a6f61a2 Print the log if configure fails 2020-04-27 03:32:26 +02:00
Tyrell Sassen
de43073145 Convert existing shaders to C++11 raw strings
Shaders were previously saved as standard C++ string concatenations.
This commit converts them to the C++11 raw string syntax using a raw
string delimiter of `GLSL`.

This format is preferable as it will allow the shaders to be viewed and
edited directly, without having to make considerations for any escape
characters within the code.
2020-04-27 03:05:09 +02:00
David Reid
9c90722ee7 Sync dr_mp3 with upstream (v0.6.5) 2020-04-26 05:42:16 +02:00
kcgen
9de8f1255e Add mailmap file to update maintainer information 2020-04-26 05:15:41 +02:00
Patryk Obara
237577101b Merge branch 'svn/trunk' r4337 2020-04-26 00:38:29 +02:00
Peter Veenstra
8e74e307a9 time keeps ticking
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4337
2020-04-25 20:05:04 +00:00
Patryk Obara
333a771a63 Fix typo resulting in broken ARM builds 2020-04-22 22:02:01 +02:00
David Reid
2e9f0c6789 Sync dr_wav with upsteam (v0.12.2) 2020-04-22 04:04:08 +02:00
Patryk Obara
0926b0609c Update hardcoded version strings to 0.76.0
Version in README file is purely informational.

Other strings are hardcoded to some platform-specific format and scheme,
where we can't use version derived from autoconf.
2020-04-22 02:51:01 +02:00
Patryk Obara
130fd60584 Update some hardcoded info
Change copyright strings to "dosbox-staging team" (we are not "DOSBox
Team"), change relevant copyright years (this meta has no real legal
meaning - unlike COPYING file and license inside source files, so use
only current year in there).
2020-04-22 02:41:00 +02:00
krcroft
3301b5924e Use more robust method to get the scripts directory 2020-04-22 02:31:55 +02:00
krcroft
5287559aee Don't initialize and manage joysticks in SDLmain
Two notable changes:

1. Eliminates the joystick setup from SDLmain, allowing
the mapper's QueryJoysticks() function to be the sole
setup and configuration point for both the SDL Joystick
subsystem and DOSBox's internal configuration of the
joysticks.

2. SDLmain's event loop previously perform some joystick-
specific timing and always called the Mapper's UpdateJoysticks
function; neither of which are needed if the user has disabled
joystick support or if joysticks aren't physically present.
This update now make this entire process conditional on both
of the latter (which is set by the Mapper's QueryJoysticks).
2020-04-22 02:07:55 +02:00
krcroft
5b587d490f
Conditionally initialize the joystick subsystem 2020-04-21 16:16:05 -07:00
krcroft
5570bfdb87
Defer laying out the UI until the first key bind event 2020-04-21 16:16:05 -07:00
Patryk Obara
fe928af0cd Remove some outdated info and update manuals 2020-04-21 23:08:56 +02:00
Patryk Obara
a67bf5ec8d Remove greetings and update project URL
I would rather have initial banner 1 line smaller, so 1% of users is
more likely to read it than greet them with "have fun".
2020-04-21 23:08:56 +02:00
Patryk Obara
00d5b23ef9 Add favicon targets to the contrib/icons/ makefile 2020-04-21 23:08:56 +02:00
krcroft
91ccfa3afc Sync PVS Studio with upstream 2020-04-21 18:02:40 +02:00
David Reid
871556d57f
Sync dr_flac with upsteam (v0.12.11) 2020-04-18 21:57:10 -07:00
David Reid
03d5163153
Sync dr_mp3 with upsteam (v0.6.4) 2020-04-18 21:57:09 -07:00
David Reid
4ef2d5ddc4
Sync dr_wav with upsteam (v0.12.1) 2020-04-18 21:57:08 -07:00
Patryk Obara
c7281b1c48 Add platform-specific notes about config dir 2020-04-18 22:09:04 +02:00
Patryk Obara
9924913e4a Move implementation to GetConfigName static function
Old interface Cross::GetPlatformConfigName is retained for backwards
compatibility for now.
2020-04-18 22:09:04 +02:00
Patryk Obara
44499e7f26 Update manuals regarding configuration path 2020-04-18 22:09:04 +02:00
Patryk Obara
c144552641 Avoid spaces in config file name on macOS
There's no reason to having a different name for .conf file on every
platform, it only makes things more difficult from user and developer
perspective.
2020-04-18 22:09:04 +02:00
Patryk Obara
2203c5e726 Adjust first comment in .conf file 2020-04-18 22:09:04 +02:00
Patryk Obara
64772850b5 Respect XDG spec for dosbox main .conf file
Windows and macOS config files are left as they were, this change
affects mostly Linux users.

Users are not forced to migrate, but visible warning is being issued if
they aren't. Majority of users probably won't notice it, as the stable
release should generate newly named .conf file.
2020-04-18 22:09:04 +02:00
Patryk Obara
a51f9b5600 Remove punctuation from some logs 2020-04-18 22:09:04 +02:00