Commit Graph

89 Commits (4a05b4bf05d10a64d6625a34e4a9677dd7d59b8c)

Author SHA1 Message Date
Soner Tari 133584361f Rename and clean-up 7 years ago
Soner Tari 496a4f090d Refactoring: Simplify, reduce, rearrange, rename, and clean-up
Get rid of now unnecessary child info struct and functions
7 years ago
Soner Tari d7094d7138 Refactoring: Simplify, reduce, rearrange, rename, and clean-up
Got rid of now unnecessary pxy_conn_is_ready_to_free*() functions
Got rid of now unnecessary duplicate child and parent free functions: pxy_*_conn_free()
Fix error handling
7 years ago
Soner Tari 1a446cd243 Refactoring: Create child ctx
Rearrange, clean-up
7 years ago
Soner Tari fc60db0e74 Disable the workaround for dst connection issues, NULL r/w cbs
Reduce the conn timeout to 30s again
7 years ago
Soner Tari 85875be00f Sometimes dst write cb fires but not event cb, especially if the listener cb is not finished yet, so the conn stalls. This is a workaround for this error condition, nothing else seems to work.
Clean-up
7 years ago
Soner Tari 590a693998 Rearrange and clean-up 7 years ago
Soner Tari e8332f11cf Make conn termination more similar to orig sslsplit code
Free child info struct of a deleted child
Rename, rearrange, and clean-up
7 years ago
Soner Tari d6e1ed2cef Fix a potential issue which could forward a packet without any SSL proxy address
Rename, rearrange, and clean-up
7 years ago
Soner Tari e3266cc811 Fix closing fd2 when uninit, i.e. fd2=0, which was freeing stdin
Clean-up and improvements
7 years ago
Soner Tari 8ad3b5db25 Defer all e2 setup until after parent is connected
Clean-up and improvements
7 years ago
Soner Tari 4d88906d24 Clean up and improve 7 years ago
Soner Tari 4f6b207e57 Improve conn termination: Close children asap if there is no parent, close parent asap if there is no child 7 years ago
Soner Tari ad1f95e465 Remove conn mutexes: Use thrmgr mutex during attach/detatch only, do eveything in the same thread, do not touch the other threads
Flex, fix, and improve conn termination: Make it more similar to orig sslsplit code
Fix issues, and clean-up
7 years ago
Soner Tari ecfaf24614 Add more child info to conns list, and clean-up 7 years ago
Soner Tari 5047df8cba Fix some of the compiler warnings, rearrange, and clean-up 7 years ago
Soner Tari be54db770f Add comments, improvements, and clean-up 7 years ago
Soner Tari 0b0f6b21dc Add uuid to all conn mctxs, otherwise we cannot uniquely identify them, causing trouble especially while deleting conns
Fix issues, clean-up
7 years ago
Soner Tari 833e1903e1 Dump conn info list
Remove conns using delete list of timed out conns
Fix issues, improvements
7 years ago
Soner Tari 82b58c2dab Fix multithreading
Clean-up
7 years ago
Soner Tari 9858928b73 Add debug levels, initial 7 years ago
Soner Tari d033ea68dd Plain TCP version is running good enough, next will try to switch the SSL on 7 years ago
Daniel Roethlisberger ac3e845fbe Test dnsbase and evbase for !NULL before freeing
Fix segmentation fault upon exiting the main loop that was introduced
when evdns initialization was made optional, resulting in dnsbase
elements not always being initialized.

Introduced in:	0e2b748
8 years ago
Daniel Roethlisberger 88c039b059 Don't test NONNULL arguments for NULL 8 years ago
Daniel Roethlisberger 0506024587 Update copyright notices to 2016 8 years ago
Daniel Roethlisberger 0e2b748bba Only init DNS when DNS is required by proxy specs
Only initialize evdns if DNS lookups are actually required by the loaded
proxy specifications.  This allows sslsplit to work in non-DNS modes in
situations where the local DNS resolver does not work, such as for local
use on a system without network connectivity.  Currently, only SNI based
proxy specs require DNS.  On systems without network connectivity, DNS
subsystem init may fail due to /etc/resolv.conf being (temporarily)
unavailable.

Issue:		#104
9 years ago
Daniel Roethlisberger 91da4674e5 Update copyright, license and tagline
-   Update copyright to 2015
-   Remove the non-standard "unmodified" from the 2-clause BSD license
-   Remove scalable from the tagline to avoid misinterpretations
10 years ago
Daniel Roethlisberger fb2841f645 Zero allocated elements before initializing them
For some error conditions, the error handler depends on
ctx->thr[idx]->dnsbase to be zeroed expicitly after allocation.
To prevent this type of error, zero all allocated memory even
though it will get written to in any case.
10 years ago
Daniel Roethlisberger 508435d929 Use correct pointer type in sizeof() 10 years ago
Daniel Roethlisberger 47c409cbb5 Don't rely on OpenSSL to pull in string.h
Obtained from:	OpenBSD port patches
10 years ago
Daniel Roethlisberger a80cbf73f4 Add some error-case debug messages to pxy_thrmgr_run() 11 years ago
Daniel Roethlisberger ca923ee7f1 Update copyright notices to 2014 11 years ago
Daniel Roethlisberger fc29806663 Fix off by one error in thrmgr error cleanup code
This should remove another potential source of segmentation faults when
the thread manager fails to start.

Issue:          #10
Reported by:    linuxton
11 years ago
Daniel Roethlisberger 29f912096b More verbose debugging in pxy_thrmgr_run() 11 years ago
Daniel Roethlisberger 080604e3c2 Fix segfault after thread manager start failure
This should fix the segmentation fault in issue #10 but not the
underlying reason why the thread manager fails to start in the first
place.

Issue:          #10
Reported by:    linuxton
11 years ago
Daniel Roethlisberger a0fd9c1050 Start thrmgr threads after forking 11 years ago
Daniel Roethlisberger c972501063 Update copyright notices 11 years ago
Daniel Roethlisberger d3abdfd5dc Fix race condition on proxy startup failure
Yield the CPU in the main thread until the proxy thread manager is fully
started.  Otherwise, the main thread could free the proxy thread manager
while the threads are still starting up, leading to a deadlock.
12 years ago
Daniel Roethlisberger 4cfdef405a Initial import of sslsplit-0.4.2 12 years ago