Skip to content

2.1.x redis roster#4

Open
engobi wants to merge 97 commits intomaster:2.1.xfrom
engobi:2.1.x-redis-roster
Open

2.1.x redis roster#4
engobi wants to merge 97 commits intomaster:2.1.xfrom
engobi:2.1.x-redis-roster

Conversation

@engobi
Copy link

@engobi engobi commented May 27, 2013

mod_roster_redis : allow ejabberd to store roster in a redis hash (including support of redis proxy twemproxy aka nutcracker). This module uses eredis.

Thx.

badlop and others added 30 commits March 16, 2012 14:16
This patch introduces a new config option - fqdn - to set the fully
qualified domain name of the host:
  {fqdn, "foo.example.com"}.
This fixes a problem with Pidgin not being able to log in on a server
that used SRV records.
This fixes case when SockMod:recv() calls returns only part of first line
of http request (GET/POST/OPTION/HEAD line). Before that change request
like that (and if keep-alive was active, all further request) were dropped.

This fixes EJAB-1537.
This was added in R13B3, lets roll our own implementation to make sure it
works on older erlang versions.
This code adds case normalization step to https headers parsing, making
it correctly use atoms for some special header no matter how upper/lower
case letters are used in input string
Evgeniy Khramtsov and others added 29 commits July 17, 2012 23:35
SSL 2.0 is not used anywhere as it has security problems. Disable it
unconditionally both in server and client mode. This does _not_
disable support for SSL 2.0 compatible client hello which still will
be accepted in the server mode.
Disable:
- export ciphers - broken by design, 40 and 56 bit encryption
- low encryption ciphers - 56 and 64 bit encryption
- SSLv2 ciphers - some ciphers using MD5 MAC
Rosters is stored in a hash as following:

{
  "rosterusers::username1": [
				{"user2@server2": "nick2::subscription2::ask2::askmessage2::group2"},
                                {"user3@server3": "nick3::subscription3::ask3::askmessage3::group3"},
                                {"user3@server4": "nick4::subscription4::ask4::askmessage4::group4"}
			    ],
  "rosterusers::username2": [
                                {"user2@server2": "nick2::subscription2::ask2::askmessage2::group2"},
                                {"user5@server5": "nick5::subscription5::ask5::askmessage5::group5"},
                                {"user3@server4": "nick4::subscription4::ask4::askmessage4::group4"}
                            ]
}
Roster is stored in a redis hash as following:

{
  "rosterusers::username1": [
				{"user2@server2": "nick2::subscription2::ask2::askmessage2::group2"},
                                {"user3@server3": "nick3::subscription3::ask3::askmessage3::group3"},
                                {"user3@server4": "nick4::subscription4::ask4::askmessage4::group4"}
			    ]

}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants