https://github.com/voldemort/voldemort
Revision b3becf3232d4a4fefdd7a8fe3e7f86b8e401baf6 authored by Arunachalam Thirupathi on 23 March 2015, 18:43:01 UTC, committed by Arunachalam Thirupathi on 16 April 2015, 00:00:40 UTC
Separated both Admin and Client Request Handler.
Currently the client port will answer admin requests and the admin
port will answer client requests. You can bootstrap from one of these
ports and client after bootstrapping sends the queries to the correct
ports.

This is dangerous as most of the security implementations of voldemort
relies on blocking the admin port via firewall and an attacker can
change the voldemort source code to send the admin requests to client
port.

My intention for the fix was to make sure that the client answers only
client requests. This will help me
to make the client request handler share the read and write buffer
without touching the admin request handler. Though it can be done for
both client and admin, admin requests are too few and there are too many
places to touch. So will fix only the client request handler.

The AdminClient expects both the client and admin request handler. The
admin client does some get remote metadata calls which uses the
voldemort native v1 requests on admin port. So leaving the admin request
handler unchanged, just moved some code so that client request handlers
are isolated.
1 parent 4a87d69
History
Tip revision: b3becf3232d4a4fefdd7a8fe3e7f86b8e401baf6 authored by Arunachalam Thirupathi on 23 March 2015, 18:43:01 UTC
Separate Client and Admin Request Handler
Tip revision: b3becf3
File Mode Size
.settings
bin
clients
config
contrib
docs
example
gradle
private-lib
public-lib
src
test
voldemort-contrib
.gitignore -rw-r--r-- 242 bytes
CONTRIBUTORS -rw-r--r-- 659 bytes
LICENSE -rw-r--r-- 11.1 KB
NOTES -rw-r--r-- 2.5 KB
NOTICE -rw-r--r-- 8.1 KB
README.md -rw-r--r-- 4.4 KB
build.gradle -rw-r--r-- 19.8 KB
build.xml -rw-r--r-- 22.1 KB
gradle.properties -rw-r--r-- 1.2 KB
gradlew -rwxr-xr-x 5.0 KB
gradlew.bat -rw-r--r-- 2.3 KB
release_notes.txt -rw-r--r-- 41.2 KB
settings.gradle -rw-r--r-- 149 bytes
tomcat-tasks.properties -rw-r--r-- 420 bytes
web.xml -rw-r--r-- 1.1 KB

README.md

back to top