Commit Graph

345 Commits

Author SHA1 Message Date
Marco Castelluccio
f2aadf350c Bug 1433408 - Blocklist Dell Backup and Recovery tool DLLs as they cause crashes. r=aklotz
--HG--
extra : rebase_source : 85809f1757f257be0e0bf8848b0cc104e0543eb6
2018-02-15 23:13:29 +01:00
Sebastian Hengst
ede8ef2991 Bug 1446680 - Restrict WindowsDllBlocklist's gStartAddressesToBlock to Nightly builds. r=aklotz
MozReview-Commit-ID: H3G4fKfpUlf

--HG--
extra : rebase_source : e7d2dc04aca4157484af1874bc4e89e2f44997ca
2018-03-17 21:14:18 +01:00
Carl Corcoran
f1404c4534 Bug 1435816: Prevent thread start in LoadLibrary; r=aklotz
MozReview-Commit-ID: 2TNPfrqebZ8

--HG--
extra : rebase_source : 96341de92f1f5973b440cf7e9125fcdb546f5901
2018-02-22 13:41:15 +01:00
Csoregi Natalia
d77091952c Backed out changeset 66fb307a2a70 (bug 1435816) for windows mingw failures on WindowsDllBlocklist.cpp:822. CLOSED TREE 2018-03-16 16:38:57 +02:00
Carl Corcoran
e5b4966489 Bug 1435816: Prevent thread start in LoadLibrary; r=aklotz
MozReview-Commit-ID: 2TNPfrqebZ8

--HG--
extra : rebase_source : 074f8af9964ad002a8e550223886c99a79e3543c
2018-02-22 13:41:15 +01:00
Aaron Klotz
020963a272 Bug 1436845: Part 1 - Add BasicDllServices; r=jimm
BasicDllServices is a simplified implementation that allows programs other than
Firefox to link against mozglue and access DLL services without requiring any
XPCOM baggage.
2018-02-13 16:03:11 -07:00
philipp
3971a035c7 Bug 1043775 - Put old versions of GDATA GDKBFltDll64.dll on Dll blocklist. r=marco 2018-02-14 09:51:00 +02:00
Chris Peterson
fe5cd3d5d9 Bug 1436263 - Part 3: Remove virtual from final virtual function declarations. r=froydnj
MozReview-Commit-ID: 8pjYjEvQF42

--HG--
extra : rebase_source : 5eb0bea2ef5f06a811b4f3daf57ce8720f12dd07
2018-02-08 21:22:43 -08:00
Chris Peterson
0129d900f3 Bug 1436263 - Part 2: Replace override final virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: 70gt5SUu4Dv

--HG--
extra : rebase_source : 71912c6bde22aaed01e70615a4ee794a36e70d0e
extra : source : 1c22d4c65d70b797ee3e963ec426c90e1f89b5e3
2018-02-05 22:50:00 -08:00
Aaron Klotz
1eec067d63 Bug 1437309: Delayload crypt32 and wintrust in mozglue; r=glandium 2018-02-12 12:17:36 -07:00
Aaron Klotz
1beac92cc2 Bug 1430857: Part 2 - Add cert annotations to Windows crash reports; r=mhowell
MozReview-Commit-ID: 270iURVhNRu

This patch builds upon the existing DLL services functionality:

1) We add code to obtain the name of the subject from the cert used to sign a
   binary (if present). This code is added inside mozglue because in the future
   we will be using this code from the DLL blocklist, which is also located
   there.
2) We add annotation functionality that registers itself for DLL load events
   and updates crash reporter annotations as new libraries are loaded. It also
   annotates any existing libraries that are also in memory at the time that the
   CertAnnotator is first instantiated. This all happens off main thread, with
   the exception of actually making the annotation when in a child process.

--HG--
extra : rebase_source : 2e3726d37356479aee81915caed04fe7af74c815
2018-01-30 15:08:03 -07:00
Aaron Klotz
0213e8a4b6 Bug 1430857: Part 1 - Refactor DllServices to make it possible to obtain them from anywhere in Gecko; r=jimm
MozReview-Commit-ID: GfWata0eCc5

--HG--
extra : rebase_source : f280fec92c867d0adbe7b82c0e829eeb10fce5a9
2018-01-30 14:23:10 -07:00
Dorel Luca
112cc1ff6b Backed out 3 changesets (bug 1430857) for breaking tests on Windows Code Coverage builds a=backout
Backed out changeset a992887a6060 (bug 1430857)
Backed out changeset cc9b0ac5f66b (bug 1430857)
Backed out changeset 4bdd6d82f993 (bug 1430857)
2018-02-07 15:02:58 +02:00
Aaron Klotz
e398eaca79 Bug 1430857: Part 2 - Add cert annotations to Windows crash reports; r=mhowell
MozReview-Commit-ID: 270iURVhNRu

This patch builds upon the existing DLL services functionality:

1) We add code to obtain the name of the subject from the cert used to sign a
   binary (if present). This code is added inside mozglue because in the future
   we will be using this code from the DLL blocklist, which is also located
   there.
2) We add annotation functionality that registers itself for DLL load events
   and updates crash reporter annotations as new libraries are loaded. It also
   annotates any existing libraries that are also in memory at the time that the
   CertAnnotator is first instantiated. This all happens off main thread, with
   the exception of actually making the annotation when in a child process.

--HG--
extra : rebase_source : f86c1a6fd2a44f21a71e7a7418267b3b0d5feeec
2018-01-30 15:08:03 -07:00
Aaron Klotz
200eb77750 Bug 1430857: Part 1 - Refactor DllServices to make it possible to obtain them from anywhere in Gecko; r=jimm
MozReview-Commit-ID: GfWata0eCc5

--HG--
extra : rebase_source : 3a5b4a6f0412311f0b9080a2b3b3a31e45d15b75
2018-01-30 14:23:10 -07:00
Gurzau Raul
c104d865cc Backed out 2 changesets (bug 1430857) for build bustage on a CLOSED TREE
Backed out changeset b12ea04f9c5a (bug 1430857)
Backed out changeset 6b88557d1e50 (bug 1430857)
2018-02-06 23:27:33 +02:00
Aaron Klotz
5f9a96be9c Bug 1430857: Part 2 - Add cert annotations to Windows crash reports; r=mhowell
MozReview-Commit-ID: 270iURVhNRu

This patch builds upon the existing DLL services functionality:

1) We add code to obtain the name of the subject from the cert used to sign a
   binary (if present). This code is added inside mozglue because in the future
   we will be using this code from the DLL blocklist, which is also located
   there.
2) We add annotation functionality that registers itself for DLL load events
   and updates crash reporter annotations as new libraries are loaded. It also
   annotates any existing libraries that are also in memory at the time that the
   CertAnnotator is first instantiated. This all happens off main thread, with
   the exception of actually making the annotation when in a child process.

--HG--
extra : rebase_source : e032ee8c4cf71e5225b51797443764549f4bbe56
2018-01-30 15:08:03 -07:00
Aaron Klotz
eb3453b4d6 Bug 1430857: Part 1 - Refactor DllServices to make it possible to obtain them from anywhere in Gecko; r=jimm
MozReview-Commit-ID: GfWata0eCc5

--HG--
extra : rebase_source : d8d2ec74e7f452cb1e8b5430f4445f3b0fc9181a
2018-01-30 14:23:10 -07:00
Tom Ritter
6d070e11bd Bug 1235982 Add CFG to firefox.exe and mozglue, and a mochitest to ensure a crash r=glandium,mconley
MozReview-Commit-ID: EYKgDyGtw8m

--HG--
extra : rebase_source : 76166d4fca452674d0a442778290e40106ce339c
2018-01-25 12:15:40 -06:00
Philip Chimento
6b52ba7b8d Bug 1176787 - Always link mozglue into the shared library when building standalone. r=glandium
Regardless of which platform we are building on.

--HG--
extra : rebase_source : b10b6b7127e8ed86e9c19f4cba9d54fd2f02f99f
2018-01-15 13:57:03 -08:00
Aaron Klotz
35b1027e2c Bug 1423999: Improved UIA detection that eliminates handle duplication; r=Jamie
MozReview-Commit-ID: 5CqjkyDoPs8

--HG--
extra : amend_source : 877a3d6cadab0645274c9542249fc35cfd682d41
2017-12-07 12:13:14 -07:00
Aaron Klotz
0f6431e1f3 Bug 1422394: Add a mechanism to report dll loads to an observer; r=jimm
MozReview-Commit-ID: 1ocag6jTBVV
2017-12-04 18:08:17 -07:00
Brindusan Cristian
14add183dc Backed out 2 changesets (bug 1422394) for browser-chrome failure in test_headless_screenshot.html on Windows 7 debug non-e10s r=backout a=backout on a CLOSED TREE
Backed out changeset 8f233446cd06 (bug 1422394)
Backed out changeset 96940dc4db44 (bug 1422394)
2017-12-05 23:49:08 +02:00
Aaron Klotz
7abd7674c8 Bug 1422394: Follow-up: Add missing include to fix mingw bustage; r=bustage 2017-12-05 13:00:05 -07:00
Aaron Klotz
9da53d8e93 Bug 1422394: Add a mechanism to report dll loads to an observer; r=jimm
--HG--
extra : rebase_source : ddd40aa520447fea1bdccdbe8208bb3bfd26afe7
2017-12-04 18:08:17 -07:00
Christian Holler
586ce17728 Bug 1419371 - Set max_malloc_fill_size/max_free_fill_size for ASan. r=glandium
MozReview-Commit-ID: KPng6w8JsHI

--HG--
extra : rebase_source : fcf2aced83cdf73cccb6cf572ca7da3f6a76c515
2017-11-22 13:49:36 +01:00
Julien Cristau
e8ea0fb58a Bug 1421991 - Add old versions of G DATA BankGuard .dll to Windows blocklist. r=jimm 2017-11-30 17:37:20 +01:00
Aaron Klotz
010af8a7d8 Bug 1420276: Backed out changeset 244c97bc16e3 since we don't want to ship this yet; r=backout
--HG--
extra : rebase_source : f7376192a23e85f8850ef5b250e35813ef72e0e3
2017-12-04 15:58:20 -07:00
Aaron Klotz
04c107efd4 Bug 1420276: Add uiautomationcore.dll to blocklist; r=Jamie
MozReview-Commit-ID: AIYZfyKm20b

--HG--
extra : amend_source : d49b08f20f7aebb05ff40cd0bf13ccbad0a78c5f
2017-11-23 14:07:59 -07:00
Mike Hommey
32ecc64ada Bug 1420353 - Change how replace-malloc initializes, part 2. r=njn
Because one entry point is simpler than two, we make replace_init fulfil
both the roles of replace_init and replace_get_bridge.

Note this should be binary compatible with older replace-malloc
libraries, albeit not detecting their bridge (and with the
previous change, they do not register anyways). So loading older
replace-malloc libraries should do nothing, but not crash in awful ways.

--HG--
extra : rebase_source : aaf83e706ee34f45cfa75551a2f0998e5c5b8726
2017-11-24 16:02:05 +09:00
Mike Hommey
845f9c5d82 Bug 1420353 - Change how replace-malloc initializes, part 1. r=njn
The allocator API is a moving target, and every time we change it, the
surface for replace-malloc libraries grows. This causes some build
system problems, because of the tricks in replace_malloc.mk, which
require the full list of symbols.

Considering the above and the goal of moving some of the replace-malloc
libraries into mozglue, it becomes simpler to reduce the replace-malloc
exposure to the initialization functions.

So instead of the allocator poking into replace-malloc libraries for all
the functions, we expect their replace_init function to alter the table
of allocator functions it's passed to register its own functions.

This means replace-malloc implementations now need to copy the original
table, which is not a bad thing, as it allows function calls with one
level of indirection less. It also replace_init functions to not
actually register the replace-malloc functions in some cases, which will
be useful when linking some replace-malloc libraries into mozglue.

Note this is binary compatible with previously built replace-malloc
libraries, but because those libraries wouldn't update the function
table, they would stay disabled.

--HG--
extra : rebase_source : 2518f6ebe76b4c82359e98369de6a5a8c3ca9967
2017-11-22 17:24:29 +09:00
Chris Manchester
1877e49bc4 Bug 1411712 - Move symbol version script flags for arm in mozglue to moz.build. r=mshal
MozReview-Commit-ID: II250cfTmip

--HG--
extra : rebase_source : 70a8764e3bb646c54005fb25dc4343fdc201bade
2017-11-02 11:47:48 -07:00
Chris Manchester
f8a3e49e93 Bug 1411712 - Make a new variable for LDFLAGS to be set by Makefile.in that aren't intended to be handled by other backends. r=mshal
These flags are only relevant on OS X, and will not be necessary soon, so this
commit moves them to a separate variable while we move the remainder of the
ldflags to mozbuild.

MozReview-Commit-ID: 1NDgz3HIYpT

--HG--
extra : rebase_source : 6e9b5f5a5be5ff916db89a0b73896b9058eb040e
2017-11-02 11:47:47 -07:00
Marco Castelluccio
1c0b2d34a1 Bug 1385542 - Blocklist pghook.dll as it causes crashes. r=jimm
--HG--
extra : rebase_source : e0a8b869388d5772697bf31e900b691534b93e63
2017-10-21 01:15:58 +01:00
Marco Castelluccio
9264f7616b Bug 1407337 - Block OpenSC < 0.16.0.0. r=jimm
--HG--
extra : rebase_source : 6f2f1d3f7e3219e4d78b36fef92613fb23b77218
extra : histedit_source : fbe1d04b2577caeb7380c505ed53047435194159
2017-10-11 11:45:44 +01:00
Bob Owen
75a8563510 Bug 1410073: Load user32.dll immediately after the DLL Blocklist is in place. r=aklotz
This is to reduce the chance of it being loaded on an injected thread.
2017-10-19 20:49:44 +01:00
Bob Owen
25f5a8b221 Bug 1372823 Part 5: Extend BaseThreadInitThunk thread start address verification to 64-bit. r=dmajor 2017-09-21 09:31:07 +01:00
Marco Castelluccio
0bdfded31a Bug 1360029 - Block Nahimic DLLs affected by a bug which causes Firefox to crash. r=jimm
--HG--
extra : rebase_source : 9d35825a8ce1ecb43f72b95ac7b27c33a834521f
2017-10-12 15:08:04 +01:00
Mike Hommey
9f2dd4775e Bug 1407468 - Replace multiple !JS_STANDALONE with MOZ_WIDGET_TOOLKIT. r=mshal
--HG--
extra : rebase_source : 4f9f9f583c3422ed0f8d1d65ea8e7575bd9baf2c
2017-10-05 14:50:01 +09:00
Sebastian Hengst
15ce5cb2db Backed out changeset 4dab43248f15 (bug 1372823) for crashing GTest on Windows 10 x64 debug. r=backout
MozReview-Commit-ID: 1u7TFtv6Mdv
2017-09-21 17:27:32 +02:00
Bob Owen
6e55dc3260 Bug 1372823: Extend BaseThreadInitThunk thread start address verification to 64-bit. r=dmajor 2017-09-21 09:31:07 +01:00
Mike Hommey
25eda66c1a Bug 1401116 - Remove jemalloc symbols from mozglue.def.in. r=njn
As long as symbols have the right declspec, the linker is going to
export them as expected. The main exception to when we actually need the
exported symbol to have a different name, which is the case for the
symbols normally exported by the CRT. So keep only those renamed symbols
in mozglue.def.in.

Keeping the jemalloc symbols in this file kind of implies that we need
every new API entry points to appear in there when it's not true. This
thus removes an unnecessary moving part when adding new allocator API
entry points.

--HG--
extra : rebase_source : 76faa659d62d46f3624fe3f1df0c09beb68e3549
2017-09-19 16:06:29 +09:00
Mike Hommey
2cb309a670 Bug 1401118 - Avoid having to modify replace-malloc.mk every time we add an allocator API entry point. r=froydnj
For obscure linkage reasons, we need all the replace-malloc symbols
being passed to the linker to tell it to allow them being undefined.

That list actually duplicates what's in malloc_decls.h somehow, and
every time we add an entry point, we end up having to modify those two
files (and others, addressed in different bugs), which is suboptimal.

So we generate the list of those symbols from malloc_decls.h.

--HG--
extra : rebase_source : 50156c6dda5601a6437f94a753400ec4ed9c8343
2017-09-19 16:09:56 +09:00
Christian Holler
75d68dab36 Bug 1386304 - Add and integrate asan-reporter system add-on. r=froydnj
MozReview-Commit-ID: IwE2LzofLz0

--HG--
extra : rebase_source : 49d5f79b0774837aa52c02a120f7c16272be157e
2017-07-31 15:13:38 +02:00
Chris Manchester
fab07bc443 Bug 1386876 - Replace all uses of NO_VISIBILITY_FLAGS with a template and remove NO_VISIBILITY_FLAGS. r=glandium
MozReview-Commit-ID: 194U1WMCAM0

--HG--
extra : rebase_source : 365b68b0a1772d238ae9b84966e53dcd1197fd85
2017-05-01 18:12:35 -07:00
Chris Manchester
c0a229d4c3 Bug 1386876 - Replace all uses of DISABLE_STL_WRAPPING with a template, remove DISABLE_STL_WRAPPING. r=glandium
MozReview-Commit-ID: FMEtb5PY7iP

--HG--
extra : rebase_source : 3cdee7528846462c758e623d6bcd2e6e17dbabff
2017-09-11 11:33:26 -07:00
Julien Cristau
ff7b765b29 Bug 1268470 - Part 3: Restrict klsihk64.dll block to versions < 14.0.457.0 r=jimm
MozReview-Commit-ID: CD7jpcGGr9s

--HG--
extra : rebase_source : 73030b371d05a9a4d46964f54ee12eb1419f1255
2017-09-11 11:58:12 +02:00
Julien Cristau
01dcd5f0dc Bug 1268470 - Part 2: Block klsihk64.dll on Windows 8 r=jimm
MozReview-Commit-ID: B2IrXnr46eP

--HG--
extra : rebase_source : 3c9d8c60faa28f272b36354ceacffba70de94de7
2017-09-08 12:00:56 +02:00
Julien Cristau
18f5425cc8 Bug 1268470 - Part 1: Add BLOCK_WIN8_ONLY flag to dll blocklist r=jimm
MozReview-Commit-ID: 8ZhqDv4YMOn

--HG--
extra : rebase_source : 1a0f708c97eebeca016a053cad820f1dcd0e0129
2017-09-08 11:59:13 +02:00
Wes Kocher
eace83acfa Backed out changeset 0c2b838c91e4 (bug 1386304) for eslint failures in asan-reporter/bootstrap.js a=backout
MozReview-Commit-ID: KjA9iDDA2hp
2017-09-07 16:51:48 -07:00