forked from processone/ejabberd
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MojoAuth #2
Open
benlangfeld
wants to merge
777
commits into
master
Choose a base branch
from
feature/auth/mojoauth
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
MojoAuth #2
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
benlangfeld
force-pushed
the
feature/auth/mojoauth
branch
from
April 9, 2015 03:37
126c942
to
89a7aff
Compare
Replaced by processone#525 |
benlangfeld
force-pushed
the
feature/auth/mojoauth
branch
from
April 14, 2015 22:04
89a7aff
to
5603ceb
Compare
benlangfeld
force-pushed
the
feature/auth/mojoauth
branch
2 times, most recently
from
May 6, 2015 17:15
47c7494
to
83c3199
Compare
If the client requests a data form with the supported filters, return it as per XEP-0313 v0.3 and newer.
If an <index/> is specified in the MAM request, reject the request rather than ignoring the desired index and returning wrong results. XEP-0059 says that the server "MAY return a <feature-not-implemented/> error."
If the client doesn't specify a maximum number of messages to retrieve per page, set a limit of 50 messages. If the client specifies a limit larger than 250, cap the number to 250 messages. These limits aren't enforced for MAM v0.2 requests though, as that version of the XEP doesn't require clients to support RSM. The newer revisions say that "a server MAY place a reasonable limit on how many stanzas may be pushed to a client in one request. Whether or not the client query included a <set/> element, the server MAY simply return its limited results, modifying the <set/> element it returns appropriately."
Sort the messages retrieved from an Mnesia archive before selecting the subset limited by the <max/> value. This makes sure the desired subset of messages is sent to the client.
If a stream management session times out for a user who appears to be using MAM, drop any unacknowledged messages rather than resending or bouncing them. This avoids duplicates or bogus error messages. However, this is only done if the new mod_mam option "assume_mam_usage" is set to 'if_enabled' or 'on_request'. In the former case, a user is assumed to be using MAM if archiving is enabled for his account. In the latter case, MAM usage is assumed only if archiving was explicitly requested by the client, or if archiving was enabled by means of mod_mam's "request_activates_archiving" option.
update japanese translation
add stats processes command
ejabberd currently depends on Erlang/OTP 17.1 or higher, so we can now use maps.
* processone/pr/907: don't escape ERL_OPTIONS
This mod_mam version doesn't store groupchat messages in user archives, and it also doesn't support the "store_body_only" option.
riak authentication support
Add support for test code coverage
For now, we are running them on local Jenkins
We need to be able to run only a few test groups, even if we do not have all database backends installed and configured locally. ejabberd test suite configures a specific host per backend. I changed ejabberd to allow ignoring some hosts from config file on start, by providing the exact list of hosts we want to start. This is done by setting an ejabberd app Erlang environment variable 'hosts' and passing the list of hosts we want to actually define. When doing so, the backend specific hosts defined in ejabberd test configuration file are simply ignored. As a result, we do not try to connect to unavailable backends. I linked that part to CT run test by defining the hosts list based on environment variable CT_BACKENDS. This variable is expected to be a comma separated list of available backends. When Erlang Common Tests are run with that environment variable set, only the host matching the name of the backend will be set, plus the default "localhost", common to many tests. This can be combined with rebar ct groups list. Example commands to run tests: CT_BACKENDS=riak,mnesia rebar ct suites=ejabberd CT_BACKENDS=mnesia rebar ct suites=ejabberd groups=mnesia
Allow running test groups independently
…nto sasl-api-change
benlangfeld
force-pushed
the
feature/auth/mojoauth
branch
from
March 25, 2016 15:33
83c3199
to
3452cbf
Compare
Permits use of MojoAuth (http://mojoauth.mojolingo.com/) in ejabberd. MojoAuth is a set of standard approaches to cross-app authentication based on HMAC which is specified in RFC2104.
benlangfeld
force-pushed
the
feature/auth/mojoauth
branch
from
March 25, 2016 16:04
3452cbf
to
8e053e1
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Just a marker for discussion / review / to show progress because I want to sleep.
Seems to work ok, but I'd like to get rid of the lists mojoauth.erl expects in favour of binaries everywhere. mojo-auth.rb also has an incompatibility in that it doesn't strip the terminating newline from the password, which I need to fix.
Nearly there.