Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #128 from mcatanzaro/mcatanzaro/#68 | Dominique Leuenberger | 2020-11-10 | 1 | -1/+3 |
|\ | | | | | Remove nonfunctional and crashy pacrunner caching | ||||
| * | Remove nonfunctional and crashy pacrunner caching | Michael Catanzaro | 2020-09-10 | 1 | -1/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libproxy currently attempts to cache pacrunner objects in the pr member variable of its pacrunner_extension object. This is broken, though, because it relies on the pacrunner object also being stored in pacrunner_extension's last member variable, which is never written to. So that caching has never worked properly. In practice, it only does one thing: it causes a threadsafety bug, #68, because it causes the old pacrunner object to be deleted on the thread that is creating the new pacrunner, which is illegal for both the mozjs and WebKit-based pacrunner extensions that expect their objects to be deleted on the same thread they were created on. This patch was originally written by Dan Winship for Fedora 19. It got dropped in Fedora 24, then resurrected again for Fedora 28 after we noticed 30,000 crash reports. I've tweaked it a bit to completely remove the unused member variables. Finally, note that this code is not exception-safe: if an exception is thrown, the pacrunner could be leaked. But this seems to be a common problem throughout libproxy. It should be fixed by using std::unique_ptr instead of raw new and delete. https://bugzilla.redhat.com/show_bug.cgi?id=998232 Fixes #68 | ||||
* | | Fix mismatched new[]/delete[] in proxy.cpp | Michael Catanzaro | 2020-09-10 | 1 | -4/+4 |
|/ | | | | | | | Using the wrong delete operator is undefined behavior. All this manual new/delete really ought to be replaced by std::unique_ptr, but this will suffice for now. | ||||
* | Small performance improvements | Albert Astals Cid | 2019-10-04 | 1 | -2/+2 |
| | | | | | * pass strings by const & instead of copy * Search single chars as chars and not as strings | ||||
* | Add public px_proxy_factory_free_proxies function | Fabian Vogt | 2017-09-20 | 1 | -0/+10 |
| | | | | Fixes issue #43. | ||||
* | fix spelling mistake | Edward Betts | 2017-02-02 | 1 | -1/+1 |
| | |||||
* | Allow multiple result to be returned from static config | nicolas.dufresne@gmail.com | 2012-07-05 | 1 | -64/+105 |
| | |||||
* | Trim the ignore-values before comparing them | dominique.leuenberger@gmail.com | 2011-08-08 | 1 | -0/+1 |
| | |||||
* | fix mismatched delete[] | npmccallum | 2011-02-06 | 1 | -1/+1 |
| | |||||
* | two more win32 fixes | npmccallum | 2010-09-26 | 1 | -1/+1 |
| | |||||
* | Inlclude typelib in proxy.cpp for debug messages. | dominique.leuenberger@gmail.com | 2010-09-26 | 1 | -0/+1 |
| | |||||
* | Ported libproxy to new libmodman API/ABI | nicolas.dufresne | 2010-08-18 | 1 | -2/+8 |
| | | | | This solves issue 133 by using real builtin modules instead of relying on symbols being visible in current process. | ||||
* | Don't leak lock when pacrunner throws exception | nicolas.dufresne | 2010-06-04 | 1 | -37/+57 |
| | |||||
* | Reduce excessive string copy when dealing with ignores | nicolas.dufresne | 2010-05-17 | 1 | -6/+9 |
| | |||||
* | Remove scheme base filterring on config extension | nicolas.dufresne | 2010-04-02 | 1 | -19/+11 |
| | | | | | Filtering scheme returned by config modules was odd. This would mean that libproxy knows all the protocols that has internal proxy mechanism and even guess the one that does not exist yet. | ||||
* | Allow configuring modules PATH through environment variable | nicolas.dufresne | 2010-03-29 | 1 | -2/+7 |
| | |||||
* | Add support for socks4 and socks5 in the PAC | npmccallum | 2010-03-26 | 1 | -0/+4 |
| | |||||
* | remove unneeded setenv macro | npmccallum | 2010-03-12 | 1 | -1/+0 |
| | |||||
* | fix the case where ';' is the last character from the pac response | npmccallum | 2010-03-06 | 1 | -1/+2 |
| | |||||
* | correct some delete references; fixes issue 91; patch from Erik van Pienbroek | npmccallum | 2010-03-05 | 1 | -2/+3 |
| | |||||
* | add a little more debugging messages | npmccallum | 2010-02-25 | 1 | -2/+7 |
| | |||||
* | fix all symbols with a leading '_' | npmccallum | 2010-02-24 | 1 | -16/+16 |
| | |||||
* | re-enable exception trapping in the C api | npmccallum | 2010-02-24 | 1 | -6/+7 |
| | |||||
* | fix a crasher if debug is enabled and no config_modules are found; make ↵ | npmccallum | 2010-02-24 | 1 | -4/+9 |
| | | | | builtin modules work on win32 | ||||
* | add support for builtin modules | npmccallum | 2010-02-24 | 1 | -0/+9 |
| | |||||
* | make pac fetching work on win32 | npmccallum | 2010-02-22 | 1 | -1/+7 |
| | |||||
* | change cout -> cerr for debug messages | npmccallum | 2010-02-22 | 1 | -13/+13 |
| | |||||
* | add initializer for this->wpad | npmccallum | 2010-02-22 | 1 | -0/+1 |
| | |||||
* | add debug output | npmccallum | 2010-02-22 | 1 | -7/+26 |
| | |||||
* | add support in core libproxy for inverting ignore strings | npmccallum | 2010-02-17 | 1 | -3/+8 |
| | |||||
* | add support for win32 mutexes | npmccallum | 2010-02-10 | 1 | -8/+22 |
| | |||||
* | fix a never-exit-a-loop bug | npmccallum | 2010-02-08 | 1 | -8/+5 |
| | |||||
* | add double load support for the second round of symbol tests | npmccallum | 2010-02-08 | 1 | -0/+1 |
| | |||||
* | remove googlecode from the namespace | npmccallum | 2010-02-05 | 1 | -5/+1 |
| | |||||
* | massive rework; split off libmodman; make unit tests for libmodman; remove ↵ | npmccallum | 2010-02-05 | 1 | -41/+37 |
| | | | | config_wpad; remove config_file (both intenal and module); remove config ordering support; merge lukas' kde plugin rework | ||||
* | config_w32reg actually works now, including ignore support; other misc win32 ↵ | npmccallum | 2010-02-04 | 1 | -2/+8 |
| | | | | fixes | ||||
* | remove builtin module support; there is a better way to do this | npmccallum | 2010-01-28 | 1 | -22/+0 |
| | |||||
* | implement conditional modules | npmccallum | 2010-01-24 | 1 | -0/+13 |
| | |||||
* | make builtin modules part of the module_manager api | npmccallum | 2010-01-24 | 1 | -0/+9 |
| | |||||
* | match the pacrunner plugins to the new pacrunner api; convert inet_ntop() ↵ | npmccallum | 2010-01-24 | 1 | -1/+1 |
| | | | | uses to getnameinfo() | ||||
* | Fix compilation warnings on win32 | npmccallum | 2010-01-23 | 1 | -1/+2 |
| | |||||
* | make visibility hidden by default and begin to export symbols; minor rework | npmccallum | 2010-01-23 | 1 | -11/+10 |
| | |||||
* | fix unix breakage from win32 build fixes | npmccallum | 2010-01-22 | 1 | -12/+19 |
| | |||||
* | the "OMG, I think it builds on win32!" commit | npmccallum | 2010-01-21 | 1 | -9/+13 |
| | |||||
* | yet another set of build fixes for win32 | npmccallum | 2010-01-20 | 1 | -3/+3 |
| | |||||
* | more win32 build fixes, including disabling pthread on win32 | npmccallum | 2010-01-20 | 1 | -2/+16 |
| | |||||
* | re-enable kde module; fix lots of warnings | npmccallum | 2010-01-17 | 1 | -5/+3 |
| | |||||
* | make code more c++ish (major rework) | npmccallum | 2010-01-17 | 1 | -335/+219 |
| | |||||
* | build using c++ | npmccallum | 2010-01-17 | 1 | -0/+446 |