Holger Weiss
8efae1f05b
ODBC: Sync last item notifications with mod_pubsub
...
A while back, mod_pubsub was modified to address EJAB-1456. However,
the change was only partially applied to mod_pubsub_odbc. This commit
adds the remaining part.
2014-11-14 00:02:59 +01:00
Matthias Rieber
8184326eb9
Fix kick_user command
2014-11-10 20:53:00 +01:00
Evgeny Khramtsov
f47a59de2f
Merge pull request #340 from weiss/disable-mechanisms
...
New option: disable_sasl_mechanisms
2014-11-10 11:47:10 +03:00
Holger Weiss
ee0ecd2419
New option: disable_sasl_mechanisms
...
The new "disable_sasl_mechanisms" option allows for restricting the list
of SASL mechanisms offered to the client.
Closes #339 .
2014-11-10 01:10:04 +01:00
Holger Weiss
41dc1efde4
Avoid duplicates of carbon copies
...
When multiple resources have the same (highest) priority, the session
manager routes messages sent to their bare JID to each of these
resources. When another resource has a lower priority but receives
carbon copies, make sure it won't receive multiple copies of such
messages.
2014-11-05 19:04:02 +01:00
Evgeny Khramtsov
56dab7ddbe
Merge pull request #328 from flygoast/master
...
Return an empty <vCard/> element in an IQ-result when no vCard exists.
2014-10-29 16:43:49 +03:00
Evgeniy Khramtsov
74b67fa0dc
Add new option: store_empty_body
2014-10-27 14:18:09 +03:00
Evgeniy Khramtsov
067958d705
Merge branch 'master' of github.com:processone/ejabberd
2014-10-27 13:44:59 +03:00
Evgeniy Khramtsov
dec1e1f67f
Revert "fix mod_offline to store only chat messages with body xml element"
...
This reverts commit 436f0832c1
.
2014-10-27 13:44:46 +03:00
Holger Weiss
2399aba67d
Accept trailing whitespace in Base64 strings
2014-10-25 02:05:02 +02:00
Gu Feng
94cdcd7b34
Return an empty <vCard/> element in an IQ-result when no vCard exists.
...
According to XEP-0054, if no vCard exists, the server MUST return a stanza
error (which SHOULD be <item-not-found/>) or an IQ-result containing an
empty <vCard/> element.
Signed-off-by: Gu Feng <flygoast@126.com>
2014-10-25 00:55:49 +08:00
Holger Weiss
2d748115ee
Don't advertise auth mechanisms too early
...
If "starttls_required: true" is specified for c2s connections,
authentication mechanisms shouldn't be offered before negotiating the
TLS connection.
2014-10-23 10:04:14 +02:00
Evgeny Khramtsov
0b22277b11
Merge pull request #321 from weiss/fix-http-request-record
...
Use 'request' record definition from header file
2014-10-21 12:12:55 +04:00
liudan
d2edcf1288
fix odbc keepalive interval bug
2014-10-21 10:05:44 +08:00
Holger Weiss
0c24e18b5e
XEP-0198: Abort immediately on queue overflow
...
Terminate the ejabberd_c2s process immediately once stanza queue
overflow is detected. This makes sure the FSM won't process additional
stanzas before terminating if the recipient is flooded.
2014-10-17 01:35:30 +02:00
Holger Weiss
96d6aacede
Use 'request' record definition from header file
...
This fixes a 'badrecord' crash in mod_http_fileserver.
2014-10-16 13:51:13 +02:00
Holger Weiss
1ccc0d8bcb
XEP-0198: Set #state.conn field on session resume
2014-10-12 19:44:35 +02:00
Holger Weiss
7bdc1151b1
Make sure "starttls_required" can't be bypassed
...
Don't allow clients to circumvent the "starttls_required" option by
enabling XMPP stream compression.
2014-10-12 02:08:08 +02:00
Evgeniy Khramtsov
4bbf16b21a
Fix list unblocking when Riak is used as a backend
2014-10-10 11:38:13 +04:00
Evgeniy Khramtsov
d87ca9fb7b
Fix format of an XML-RPC response
2014-10-04 12:55:59 +04:00
Evgeniy Khramtsov
7b3209cc7f
Switch to P1 implementation of XML-RPC
2014-10-04 12:49:33 +04:00
Evgeniy Khramtsov
1d782db84f
Process XML-RPC requests via p1_xml and ejabberd_http
2014-10-04 12:49:12 +04:00
Evgeniy Khramtsov
e109f352e3
Make directory creation more robust
2014-10-02 14:21:27 +04:00
Holger Weiss
277e1dc3ff
Offer CSI stream feature only if configured
...
Don't offer the CSI stream feature when mod_client_state isn't actually
configured to filter stanzas. This makes sure clients won't send CSI
tags that end up being ignored.
2014-09-25 18:28:20 +02:00
Holger Weiss
56175fef1b
Add new hook: c2s_post_auth_features
...
The c2s_post_auth_features hook can be used to extend the list of stream
features offered after authentication.
2014-09-25 18:15:33 +02:00
Holger Weiss
7aec0337e1
Remove invisible presence fields from c2s #state
...
Invisible presence isn't supported anymore, so the corresponding
ejabberd_c2s #state fields were unused.
2014-09-25 00:08:56 +02:00
Holger Weiss
61c8836740
Rename deref_aliases back to ldap_deref_aliases
...
The "ldap_deref_aliases" option has accidentally been renamed to
"deref_aliases". Revert that change (but accept both names for a
while), so that the option name now matches the documentation again.
2014-09-23 11:31:44 +02:00
Holger Weiss
0a9212583d
XEP-0198: Support "resend_on_timeout: if_offline"
...
If "resend_on_timeout" is set to "if_offline", resend unacknowledged
stanzas only if no other resource is online when the session times out.
In other words, allow for sending them to offline storage, but nowhere
else.
2014-09-16 22:42:34 +02:00
Holger Weiss
b8c98232b8
Support XEP-0352: Client State Indication
2014-09-11 17:44:29 +02:00
Evgeny Khramtsov
7a48e30523
Merge pull request #296 from weiss/remove-unused-clause
...
XEP-0198: Remove unused function clause
2014-09-07 07:27:17 +04:00
Holger Weiss
2ca563e328
XEP-0198: Remove unused function clause
...
In the 'wait_for_resume' state, #state.mgmt_pending_since is always
initialized. fsm_next_state/2 takes care of that.
2014-09-06 20:39:38 +02:00
Holger Weiss
2e169167d4
XEP-0198: Change state on gen_tcp:send/2 failure
...
When Stream Management is enabled and a gen_tcp:send/2 call fails, go
into the 'wait_for_resume' state immediately. This makes sure that
gen_tcp:send/2 won't be called again, which might avoid an Erlang issue
where gen_tcp:send/2 apparently hangs despite 'send_timeout' (and
'send_timeout_close') being set.
2014-09-06 20:34:32 +02:00
Holger Weiss
11b2921971
XEP-0198: Let fsm_next_state/2 check timeout value
...
Don't force the fsm_next_state/2 caller to check for 'mgmt_timeout = 0'.
2014-09-06 20:29:02 +02:00
Evgeniy Khramtsov
ac2ba399a9
Make sure x:data form possesses 'type' attribute
2014-09-03 21:28:55 +04:00
Evgeniy Khramtsov
fda73c3d16
Fix privacy checks of presence probes
2014-09-01 16:39:02 +04:00
Evgeniy Khramtsov
a1ce33ebf8
Automatically remove IPs from ban, add the documentation
2014-08-27 13:25:49 +04:00
Evgeniy Khramtsov
9be9949dab
Remove useless -include()
2014-08-27 13:18:29 +04:00
Evgeniy Khramtsov
0f1d95a074
Ban the IP if there are too many failed authentications
2014-08-27 13:18:22 +04:00
Evgeniy Khramtsov
2430e6691b
Add mod_fail2ban
2014-08-27 13:17:56 +04:00
Holger Weiss
f1ad6f017b
Fix a comment in ejabberd_hooks
2014-08-26 01:04:15 +02:00
vesvalo
01a3c1c2e1
Fix return value of mod_shared_roster:delete_group. Current one is not compatible with mod_admin_extra.
2014-08-21 15:13:43 +04:00
vesvalo
c48b7f272b
fix 404 on pep first publishing with odbc
2014-08-21 11:23:58 +04:00
Holger Weiss
2802b6cee2
Allow for "max_ack_queue: infinity", as documented
2014-08-20 12:53:26 +02:00
Holger Weiss
7274dafe10
Store persistent MUC room during creation
...
Make sure persistent rooms are stored to the database. Without this
change, a room got lost if the 'persistent' flag was handed over to
mod_muc:create_room/5 and the server was then restartet before any
activity took place in that room.
2014-08-19 11:12:51 +02:00
Evgeny Khramtsov
bc2e26fecd
Merge pull request #277 from weiss/xep-0198
...
XEP-0198: Create shorter session resume IDs
2014-08-15 19:15:32 +04:00
Holger Weiss
2d4c39cd54
XEP-0198: Create shorter resume IDs
...
Omit the user and server name from the 'previd' value.
2014-08-15 10:56:59 +02:00
Evgeny Khramtsov
9484b11383
Merge pull request #276 from weiss/xep-0198
...
XEP-0198: Don't crash if the resume ID is incorrect
2014-08-15 10:49:59 +04:00
Holger Weiss
848e1497d1
XEP-0198: Gracefully handle broken 'previd'
...
Produce a proper error message instead of crashing when the 'previd'
value of a <resume/> request has an unexpected format.
2014-08-15 01:54:41 +02:00
Holger Weiss
2daf95e93f
XEP-0198: Gracefully handle wrong credentials
...
Produce a proper error message instead of crashing when the JID encoded
in the 'previd' value of a <resume/> request is different from the
authenticated JID.
2014-08-15 01:53:47 +02:00
Evgeny Khramtsov
1b1d9b5a73
Merge pull request #269 from Iperity/master
...
Fix migration of pubsub nodes. Was deleting and re-creating all nodes on...
2014-08-15 03:20:36 +04:00
Evgeny Khramtsov
5836eb5bc2
Merge pull request #268 from benlangfeld/fix/ldap_filter_dnattributes_new_ejabberd
...
Set dnAttributes on when it's requested by a filter
2014-08-15 03:19:18 +04:00
Evgeniy Khramtsov
5c88f6423a
Fix the deprecation warning to reflect YAML format
2014-08-12 14:26:15 +04:00
Evgeny Khramtsov
0917209711
Merge pull request #273 from gamenet/master
...
odb_queries patch return value of functions update and update_t in case of sql insert
2014-08-08 16:03:03 +04:00
vesvalo
436f0832c1
fix mod_offline to store only chat messages with body xml element
2014-08-08 13:57:27 +04:00
vesvalo
92f89e3d45
Fix odbc update_t and update insert case return value
2014-08-08 13:26:16 +04:00
Holger Weiss
38c016a041
Log auth method for incoming s2s connections
...
Generate an [info] message that logs whether an incoming s2s connection
is authenticated using the SASL EXTERNAL mechanism or via Server
Dialback. While at it, also mention whether TLS is enabled.
2014-08-05 14:10:32 +02:00
Nathan Bruning
4f63cb21c2
Fix migration of pubsub nodes. Was deleting and re-creating all nodes on each startup.
2014-08-03 21:03:16 +02:00
Alexey Shchepin
f00725dffb
mod_offline now uses gen_server
2014-07-31 14:26:09 +04:00
Christophe Romain
4205108f30
typo fix on roster subscription (EJAB-1711)
2014-07-31 11:50:22 +02:00
Ben Langfeld
651de2ca8e
Set dnAttributes on when it's requested by a filter
2014-07-29 15:22:54 -03:00
Evgeniy Khramtsov
3d3a4f7543
Fix events broadcasting via C2S
2014-07-22 19:42:49 +04:00
Christophe Romain
320abee110
apply pull request #250 to pubsub_odbc as well
2014-07-21 17:14:59 +02:00
Christophe Romain
0579fc80ec
Merge pull request #250 from Iperity/master
...
Fix configuraton with custom nodetree plugin
2014-07-21 17:11:29 +02:00
Evgeniy Khramtsov
014d61955c
Move some namespaces definitions into header file
2014-07-21 08:32:26 +04:00
Evgeniy Khramtsov
1f4e0c8aea
Fix Record-Route signing
2014-07-17 20:30:36 +04:00
Paweł Chmielowski
e0c9242dcf
treap.erl was moved to p1_utils
2014-07-17 11:57:23 +02:00
Paweł Chmielowski
0456b78d87
Use p1_utils
2014-07-17 10:52:31 +02:00
Evgeniy Khramtsov
568068c79f
Get rid of p1_mnesia file
2014-07-17 08:32:13 +04:00
Evgeniy Khramtsov
b5c4fe6626
Change return type to reflect recent changes in p1_sip
2014-07-16 15:28:36 +04:00
Evgeniy Khramtsov
64205426bf
Fix returned types
2014-07-16 10:33:49 +04:00
Evgeniy Khramtsov
89025eea39
Fix blocklist get
2014-07-16 07:43:24 +04:00
Evgeniy Khramtsov
4ef0dd6997
Better Riak usage detection
2014-07-15 20:26:45 +04:00
Evgeniy Khramtsov
b5f1b17926
Fix broken hooked functions
2014-07-15 19:22:33 +04:00
Nathan Bruning
99c28ab4d6
Fix configuraton with custom nodetree plugin
2014-07-15 12:04:06 +02:00
Evgeniy Khramtsov
792b5a24df
Serialize records to proplists before storing then in Riak
2014-07-14 08:24:44 +04:00
Evgeniy Khramtsov
a5987633e0
Fix compile errors introduced by previous cherry picks
2014-07-10 14:16:33 +04:00
Evgeniy Khramtsov
2fe8e0dea5
Make it possible to check Riak connection status
2014-07-10 13:55:24 +04:00
Evgeniy Khramtsov
6a73b96459
Fix roster versioning support when Riak backend is enabled
2014-07-10 13:54:06 +04:00
Evgeniy Khramtsov
538d4ffbd0
Fix case clause
2014-07-10 13:53:57 +04:00
Evgeniy Khramtsov
c15dc01cff
Improve Riak pool management
2014-07-10 13:52:29 +04:00
Evgeniy Khramtsov
e82219185b
Add SQL to Riak converter
2014-07-10 13:29:01 +04:00
Evgeniy Khramtsov
0490c2f139
Improve Riak support
2014-07-10 13:26:37 +04:00
Alexey Shchepin
a4b02c38db
Updated riak support
2014-07-10 13:15:15 +04:00
Alexey Shchepin
47763c10e3
Preliminary Riak support
2014-07-10 13:04:39 +04:00
Evgeniy Khramtsov
fc692ea512
Add start_module/2
2014-07-08 20:58:03 +04:00
Evgeniy Khramtsov
2b8c4acd57
Rename options
2014-07-07 09:40:08 +04:00
Evgeniy Khramtsov
ee40c0e9a7
Add new option support: always_record_route
2014-07-07 09:40:01 +04:00
Matwey V. Kornilov
50a73d1188
Use -include_lib instead of -include for esip and p1_xml
...
-include_lib is used in order to find deps. Rebar include magic is not required anymore.
Rebar uses deps as library directory.
2014-07-05 17:57:35 +04:00
Evgeniy Khramtsov
76ebebf2a0
Revert "Fix IQ XML generation."
...
This reverts commit 26a4d91297
.
2014-07-05 17:53:45 +04:00
Jerome Sautret
aba7150af1
Return MySQL error messages as binary.
2014-07-04 17:39:28 +02:00
Jerome Sautret
26a4d91297
Fix IQ XML generation.
2014-07-04 15:21:40 +02:00
Christophe Romain
9265720f92
add ability to rotate logs on given date condition
2014-07-02 23:46:54 +02:00
Evgeniy Khramtsov
273631c242
New option support: log_rotate_count
2014-07-02 14:59:05 +02:00
Evgeniy Khramtsov
bb8a0f71e6
Support new options: log_rotate_size and log_rate_limit
2014-07-02 14:58:58 +02:00
Evgeniy Khramtsov
ffdb39d269
Disable SASL error logger if lager is enabled
2014-07-02 14:58:46 +02:00
Badlop
8fae4748a1
mod_caps doesn't provide Mnesia export feature
2014-06-27 13:49:17 +02:00
Evgeny Khramtsov
31440a586c
Merge pull request #238 from weiss/log-node-mismatch
...
Check for Mnesia node name mismatches on startup
2014-06-12 13:23:17 +04:00
Holger Weiss
1ef2dd45f3
Check for Mnesia node name mismatches
...
Log a proper error message if the node running ejabberd doesn't own the
Mnesia database.
2014-06-12 11:00:22 +02:00
Evgeniy Khramtsov
b29615561c
Change default flow timeout as recommended per the RFC
2014-06-12 09:30:10 +04:00
Evgeniy Khramtsov
7892b72bcb
Don't forget to close socket of timed out flow
2014-06-12 09:30:04 +04:00
Holger Weiss
c20acbf4d8
Mention configuration file path in error messages
...
If reading or parsing a YAML configuration fails, log the full path to
the configuration file (as we do for old-style ".cfg" files).
2014-06-11 15:03:33 +02:00
Evgeny Khramtsov
e66899e68e
Merge pull request #231 from hamano/case_clause_error_at_node_hometree_odbc
...
case_clause_error_at_node_hometree_odbc
2014-06-09 23:50:43 +04:00
Evgeniy Khramtsov
87f8c2ecd8
Don't stop roster table conversion on broken askmessage
2014-06-09 10:55:05 +04:00
Evgeniy Khramtsov
62be3bc111
Fix previous commit
2014-06-09 10:40:52 +04:00
Evgeniy Khramtsov
c485aea48b
Don't stop irc table conversion on broken JIDs
2014-06-09 10:36:42 +04:00
Evgeniy Khramtsov
6f4b4ad087
Ignore malformed parameters for mod_irc module
2014-06-07 07:45:36 +04:00
Evgeniy Khramtsov
3e8a0af6d1
Fix data convertion
2014-06-07 07:05:24 +04:00
Evgeniy Khramtsov
12ab5a749f
Clean up all timers gracefully
2014-06-06 22:29:50 +04:00
Evgeniy Khramtsov
ddfbca5830
Use a different timer for flow control
2014-06-06 13:53:13 +04:00
Evgeniy Khramtsov
9e72529544
SIP Outbound (RFC 5626) support
2014-06-06 09:36:45 +04:00
Christophe Romain
11aa51373a
add missing format handler
2014-06-05 16:23:17 +02:00
Holger Weiss
e0e74a9d5e
Don't "forget" listener options
...
If a listener is started or stopped via ejabberd_listener:add_listener/3
or ejabberd_listener:delete_listener/3, the configuration for all
listener modules is updated using the Module:transform_listen_option/2
function for each listener module that exports such a function.
However, for listener modules that don't provide that function (such as
ejabberd_stun), all but one option was dropped. This is now fixed.
The issue could be triggered e.g. by enabling mod_proxy65 in the modules
section.
2014-06-04 20:54:26 +02:00
HAMANO Tsukasa
cc228db337
e_clause error at node_hometree_odbc:get_items/3
2014-06-04 18:53:37 +09:00
Evgeniy Khramtsov
c546ce2439
Reply to pings
2014-06-03 21:18:30 +04:00
Evgeniy Khramtsov
6441c284e0
Don't add 'rport' paramater to 'Via' header
2014-06-02 20:46:29 +04:00
Evgeniy Khramtsov
0aea9c74bd
Rename option 'route' to 'record_route' and add new option 'routes'
2014-06-02 10:16:34 +04:00
Evgeniy Khramtsov
9a0d77571d
Add global static shared_key option
2014-06-01 14:20:09 +04:00
Evgeniy Khramtsov
f446e7fc0b
Sign 'Record-Route' in order to proxy unauthorized ACKs
2014-06-01 13:35:14 +04:00
Evgeniy Khramtsov
b75b5ebeb2
Fix 'via' option lookup
2014-05-31 14:22:39 +04:00
Evgeniy Khramtsov
d19903877d
Add new option: route
2014-05-31 14:22:31 +04:00
Evgeny Khramtsov
f271ea6eef
Merge pull request #229 from weiss/no-carbons-to-sender
...
XEP-0280: Don't send v1 carbon copies back to the sender
2014-05-31 12:53:18 +04:00
Evgeniy Khramtsov
c76201b6b4
Don't add 'Record-Route' header for mid-dialog requests
2014-05-31 10:00:51 +04:00
Evgeniy Khramtsov
86f2af6fdc
Process bindings from multiple UACs correctly
2014-05-31 09:06:53 +04:00
Evgeniy Khramtsov
da22da23cd
Don't substitute URI in ACK
2014-05-31 07:50:16 +04:00
Holger Weiss
f45654a16a
Simplify mod_carboncopy:check_and_forward/4
...
Use the existing is_carbon_copy/1 function, and combine multiple case
clauses into a single one.
2014-05-30 23:44:19 +02:00
Holger Weiss
bb952f9ecc
Let is_carbon_copy/1 recognize <received/> carbons
...
The mod_carboncopy:is_carbon_copy/1 function now returns true not only
for <sent/>, but also for <received/> carbon copies.
2014-05-30 23:36:02 +02:00
Holger Weiss
ad2d3964ef
Don't send XEP-0280 v1 copies back to sender
...
An earlier version of XEP-0280 specified the <received/> and <sent/>
tags to be siblings of the <forwarded/> element, whereas the current
version mandates them to be parents of <forwarded/>. The mod_carboncopy
module supports both variants. However, the check that makes sure
clients won't receive a copy of the messages they sent didn't work for
the old-style schema. This is now fixed.
2014-05-30 23:32:18 +02:00
Evgeniy Khramtsov
2cd17c7988
Fix previous commit
2014-05-30 23:49:50 +04:00
Evgeniy Khramtsov
32998f7e18
Process 'Contact' headers more accurately (as per RFC3261)
2014-05-30 23:14:52 +04:00
Holger Weiss
8fb1bb1f5f
Log just one [info] message on Carbons negotiation
...
Log one instead of three [info] messages when XEP-0280 (Message Carbons)
support is enabled or disabled successfully. On failure, log an
additional [warning].
2014-05-29 15:21:11 +02:00
Holger Weiss
0cb9ea3643
XEP-0198: Cosmetic change: Reuse event handler
...
On stanza queue overflow, pass a message to self() using the exclamation
mark operator instead of send_all_state_event/2. This allows for
reusing the existing handler for 'kick' events.
2014-05-28 11:24:38 +02:00
Holger Weiss
99ca8281fa
XEP-0198: Terminate session on queue overflow
...
On queue overflow, terminate the c2s session instead of just dropping
items from the queue. This makes sure all stanzas are either delivered
or bounced.
2014-05-27 22:56:33 +02:00
Evgeny Khramtsov
3a27b1dd0c
Merge pull request #226 from weiss/simplify-state-change
...
XEP-0198: Cosmetic change: Simplify state change
2014-05-27 23:30:30 +04:00
Holger Weiss
50a4c5a6ab
XEP-0198: Cosmetic change: Simplify state change
...
When the FSM goes into the 'wait_for_resume' state, let fsm_next_state/2
take care of updating #state.mgmt_state and of writing the log line.
This doesn't change the behavior, but simplifies the code.
2014-05-27 21:14:49 +02:00
Holger Weiss
ed0c89f876
Let ejabberd_c2s always use fsm_next_state/2
...
Make sure any logic implemented in ejabberd_c2s:fsm_next_state/2 is
always applied.
2014-05-27 21:07:53 +02:00
Evgeny Khramtsov
702cddd4ff
Merge pull request #220 from weiss/handle-send-failure
...
XEP-0198: Don't exit on socket send failure
2014-05-27 15:44:04 +04:00
Evgeny Khramtsov
4d1332c30f
Merge pull request #222 from weiss/keep-session-on-failed-resume
...
XEP-0198: Don't drop session on failed resume
2014-05-27 15:38:26 +04:00
Evgeny Khramtsov
402fb9665d
Merge pull request #221 from weiss/omit-redundant-guard
...
XEP-0198: Cosmetic change: Omit redundant guard
2014-05-27 15:34:34 +04:00
Evgeny Khramtsov
b2e84405c1
Merge pull request #218 from weiss/omit-iq-xmlns
...
Omit XML namespace declaration for <iq/> stanzas
2014-05-27 15:32:02 +04:00
Evgeniy Khramtsov
52221127cc
Fix odbc_port option processing
2014-05-27 15:27:42 +04:00
Evgeniy Khramtsov
dceab3689d
Don't forget to include 'Contact' header field in 2xx registrar responses
2014-05-26 21:34:23 +04:00
Holger Weiss
59f6efeaf7
XEP-0198: Don't drop session on failed resume
...
The 'previd' value provided by the client during a session resume
request includes the client's JID and ejabberd's session ID. If there
is a session for the requested JID but with a different session ID,
resumption should fail, but that session shouldn't be closed. This
commit makes sure the latter won't happen.
In practice, this will only make a difference in odd corner cases.
2014-05-23 23:38:04 +02:00
Holger Weiss
737b0ae5dc
XEP-0198: Cosmetic change: Omit redundant guard
...
The stream management state is never 'pending' when the c2s FSM is in
the 'session_established' state.
2014-05-23 20:46:17 +02:00
Evgeniy Khramtsov
8925975c86
Fix proxying of ACK requests for 2xx responses
2014-05-23 20:14:53 +04:00
Holger Weiss
ab9667f917
XEP-0198: Don't exit on socket send failure
...
If stream management is enabled, don't exit the c2s process when
ejabberd_socket:send/2 fails, but close the socket instead. This gives
the client a chance to resume the session.
Thanks go to Matthias Rieber for reporting the issue, providing detailed
logs, and testing the fix.
2014-05-23 11:38:54 +02:00
Badlop
735bd95659
Merge branch 'check-packet-type' of git://github.com/weiss/ejabberd into weiss-check-packet-type
...
Conflicts:
src/ejabberd_c2s.erl
2014-05-21 18:45:28 +02:00
badlop
69abb48c90
Merge pull request #217 from weiss/fix-extauth-cache-usage
...
Don't use cached passwords if "extauth_cache: 0"
2014-05-21 17:35:54 +02:00
badlop
419a98d45a
Merge pull request #216 from lavrin/p1-c2s
...
Cleanup some pieces of ejabberd_c2s
2014-05-21 17:35:24 +02:00
badlop
5d855f3723
Merge pull request #207 from weiss/xep-0334
...
Honor XEP-0334: Message Processing Hints
2014-05-21 17:31:22 +02:00
Holger Weiss
6b996061a2
Omit XML namespace declaration for <iq/> stanzas
...
Only the child elements of <iq/> stanzas are qualified by the namespaces
in question, not the <iq/> stanzas themselves.
This change just clarifies the code. It doesn't alter the behaviour, as
those <iq/> stanzas are handed over to jlib:iq_to_xml/1, and that
function ignores the 'xmlns' attribute anyway.
2014-05-21 00:07:57 +02:00
Holger Weiss
fca640f50f
Don't use cached passwords if "extauth_cache: 0"
...
Regarding "extauth_cache", the guide says: "The integer 0 (zero) enables
caching for statistics, but doesn't use that cached information to
authenticate users." Make sure the cached password isn't used even if
the user is currently logged in with another resource.
2014-05-20 23:00:28 +02:00
Badlop
5010cea1a4
If log uses file:write, no need to double escape ~ in messages (EJAB-1696)
2014-05-20 14:49:52 +02:00
Radosław Szymczyszyn
5726636053
Fix check_from/2 formatting
2014-05-20 12:31:28 +01:00
Radosław Szymczyszyn
b7a542e074
Sanitize copy-pasted get_statustag/1
2014-05-20 12:28:14 +01:00
Radosław Szymczyszyn
9c37450fe4
Fix formatting
2014-05-20 12:26:33 +01:00
Radosław Szymczyszyn
c39ce133de
Build proceed/compressed elements in a sane way
2014-05-20 11:52:02 +01:00
Badlop
6d06f22f64
MUC messages with ~ were not logged (EJAB-1696)
2014-05-19 19:07:46 +02:00
Badlop
a6ddab1e9d
Fix bug when joining empty path
2014-05-14 13:28:39 +02:00
Holger Weiss
6e8dd5bdff
Don't miss incoming presence updates
2014-05-14 01:04:38 +02:00
Holger Weiss
f6da708b02
XEP-0198: Check whether routed packets are stanzas
...
Only stanzas are subject to stream management, so when XEP-0198 support
is enabled, we must distinguish them from non-stanza elements. This
commit adds a send_packet/2 function that can be used in place of
send_stanza/2 or send_element/2 whenever a packet is delivered that
might or might not be a stanza.
2014-05-12 19:20:25 +02:00
Holger Weiss
9121ca14de
Rename disconnect_user/2 command
...
The mod_admin_extra module provides a kick_session/4 command. Rename
the disconnect_user/2 command to kick_user/2 for consistency.
2014-05-12 12:44:40 +02:00
Holger Weiss
47efe4e6a9
Don't log MUC messages with <no-store/> hint
...
Honor the <no-store/> and <no-permanent-store/> hints defined in
XEP-0334.
2014-05-12 00:27:20 +02:00
Holger Weiss
03fd88e4ec
Don't store messages with <no-store/> hint
...
Honor the <no-store/> hint defined in XEP-0334.
2014-05-12 00:00:34 +02:00
Holger Weiss
9b16d09261
Don't carbon copy messages with <no-copy/> hint
...
Honor the <no-copy/> hint defined in XEP-0334.
2014-05-11 23:52:20 +02:00
Evgeny Khramtsov
5d22159e9a
Merge pull request #205 from weiss/xep-0198
...
XEP-0198: Improve handling of incorrect stanza counts reported by client
2014-05-10 00:05:17 +04:00
Evgeniy Khramtsov
003fd321ee
Do not try to retreive vCards via local SM for foreign JIDs
2014-05-09 21:26:55 +04:00
Holger Weiss
6d5bfcfe9b
XEP-0198: Improve handling of too large 'h' values
...
If the client says that it handled more stanzas than we sent (due to a
bug in the client's or in our code), increase our outgoing stanza count
accordingly. There's no point in sticking to the old value even if it
was correct, as the client surely won't fix its count during the current
session.
2014-05-09 18:28:14 +02:00
Holger Weiss
15369ff9d7
XEP-0198: Reject <resume/> with negative 'h' value
...
Make sure the 'h' attribute sent with a <resume/> request is
nonnegative, as mandated by XEP-0198.
We already have this check for <a/> elements.
2014-05-09 18:01:31 +02:00
Holger Weiss
a60fda7df4
XEP-0198: Don't warn on invalid ACK elements
...
Do not log a warning (but only a debug message) if the client sends an
invalid </a> packet. Some clients do that occasionally, and there's
nothing server admininistrators could do about that.
2014-05-09 17:54:12 +02:00
Evgeniy Khramtsov
318b0f2208
Fix previous commit (C2S session close on server shutdown)
2014-05-08 21:47:50 +04:00
Evgeniy Khramtsov
181e7a823e
Fix C2S session close on server shutdown
2014-05-08 21:39:53 +04:00
Evgeniy Khramtsov
90a5c054d4
TURN support (EJAB-1017)
2014-05-08 16:14:21 +04:00
Evgeny Khramtsov
115da54557
Merge pull request #203 from hamano/added_get_random_pid_error_handling
...
improve error handling when sql calling with (empty|unknown) host.
2014-05-08 10:02:27 +04:00
Badlop
79a49b1175
Webadmin with extauth requires internal to run at least once (issue #201 )
2014-05-07 17:13:51 +02:00
HAMANO Tsukasa
d3ed12d4ba
fix mod_offline:count_offline_messages/2
2014-05-07 15:38:18 +09:00
Holger Weiss
d343447cc9
Merge remote-tracking branch 'processone/master' into xep-0198
...
Conflicts:
doc/guide.tex
src/ejabberd_c2s.erl
2014-05-06 21:41:29 +02:00
Christophe Romain
cc1f93d7a0
Fix PEP broadcasting issue on ODBC (EJAB-1680)
2014-05-06 13:29:35 +02:00
Christophe Romain
58717923eb
Fix PEP broadcasting issue (EJAB-1680)
2014-05-06 12:37:44 +02:00
Holger Weiss
8b1f92575a
XEP-0198: Use "mgmt_" prefix for all #state fields
...
Prefix all ejabberd_c2s #state fields that are used for stream
management with "mgmt_".
2014-05-06 07:27:10 +02:00
Christophe Romain
a6244275b7
remove compilation warnings
2014-05-05 18:16:48 +02:00
Christophe Romain
4bdf1bc7a6
avoid sending duplicated events
2014-05-05 17:53:50 +02:00
Christophe Romain
faa6ad26a0
avoid sending empty events
2014-05-05 17:53:44 +02:00
Christophe Romain
530ac43758
store item when persist_item=false and cache_last_item=false but need last_item
2014-05-05 17:40:42 +02:00
Nathan Bruning
f3aa74a043
Fix small bug in presence_based_delivery implementation
2014-05-05 14:14:03 +02:00
Badlop
872cc12dd8
Temporary room not destroyed when the last participant is expulsed (EJAB-520)
2014-05-05 13:50:52 +02:00
Badlop
70f00a1b1f
extauth_cache can have value 0
2014-05-05 13:13:35 +02:00
Holger Weiss
3b3f3b9131
XEP-0198: Don't log protocol issues
...
There are corner cases where certain clients acknowledge more stanzas
than they received. Nothing really bad will happen in those cases, and
server administrators can't do anything about such issues anyway.
2014-05-05 01:11:14 +02:00
Holger Weiss
32abcbca6c
XEP-0198: Accept stream elements in pending state
...
Due to timing issues, ejabberd_c2s might receive stream elements from
the client while the session is waiting for stream resumption. Those
elements are now accepted.
2014-05-05 00:02:55 +02:00
Holger Weiss
a0917a8e9b
XEP-0198: Log message when waiting for resumption
...
Log an informational message when a session goes into the pending state
(waiting for resumption) after the connection was lost. Administrators
may well be interested in this state change when looking into issues.
2014-05-04 23:08:42 +02:00
Evgeniy Khramtsov
fafec77e56
Make it possible to get/set vCards for MUC rooms
2014-05-04 23:23:17 +04:00
Evgeniy Khramtsov
806c0e56e1
Do not crash on version downgrade
2014-05-03 17:55:03 +04:00
Evgeniy Khramtsov
d0ffcb7fd4
Assume udp_recv/5 now returns new options
2014-05-03 17:48:26 +04:00
Evgeniy Khramtsov
955487391d
Assume tcp_init/2 and udp_init/2 now return new options
2014-05-03 17:48:17 +04:00
Evgeniy Khramtsov
47a39ce738
Remove unused function
2014-05-02 17:43:23 +04:00
Evgeniy Khramtsov
ebd760b7c9
Forking support
2014-05-02 17:43:17 +04:00
Evgeniy Khramtsov
f8417f7c1f
Remove empty line
2014-05-02 17:43:09 +04:00
Evgeniy Khramtsov
3c98de69dc
Some cleanup
2014-05-02 17:43:03 +04:00
Evgeniy Khramtsov
ab6774d93d
Fix CSeq comparison
2014-05-02 17:42:57 +04:00
Evgeniy Khramtsov
58aa200297
Optimize request processing
2014-05-02 17:42:51 +04:00
Evgeniy Khramtsov
a1337cb73f
Do not proxy stray responses statelessly (as per RFC 6026)
2014-05-02 17:42:45 +04:00
Evgeniy Khramtsov
e7e4055cbb
Don't use erlang:integer_to_binary/1
2014-05-02 17:42:37 +04:00
Evgeniy Khramtsov
1d771fe646
Rewrite 'Contact' headers in REGISTER requests
2014-05-02 17:42:31 +04:00
Evgeniy Khramtsov
8e2bc8d19e
Check for 'max_user_sessions' option
2014-05-02 17:42:13 +04:00
Evgeniy Khramtsov
0117787317
Process gen_server timeouts correctly
2014-05-02 17:40:25 +04:00
Evgeniy Khramtsov
16e5d66572
Move some code in a separate function
2014-05-02 17:38:47 +04:00
Evgeniy Khramtsov
6a95422af8
Multiple REGISTER bindings support
2014-05-02 17:38:28 +04:00
Evgeniy Khramtsov
35faffe7da
Locate sessions by proxy processes directly
2014-05-02 17:31:17 +04:00
HAMANO Tsukasa
d83368d73d
fix ejabberd_system_monitor:s2s_out_info/1 error
2014-05-01 15:12:04 +09:00
Evgeny Khramtsov
c545b3de6d
Merge pull request #178 from hamano/devel
...
undefined ejabberd_socket:get_conn_type/1
2014-04-30 21:49:54 +04:00
Evgeniy Khramtsov
02e0649d18
SIP support
...
Conflicts:
configure
configure.ac
doc/guide.tex
2014-04-30 19:38:15 +04:00
HAMANO Tsukasa
0904b8b8ff
improve error handling when sql calling with (empty|unknown) host.
...
see #191
2014-05-01 00:20:58 +09:00
Badlop
ec6c58a21c
Fix error reporting in previous commit
2014-04-30 16:02:20 +02:00
Badlop
b3714a1b2e
Fix formatting string argument (thanks to Locojay)(github #129 )
2014-04-30 15:59:44 +02:00
Evgeny Khramtsov
81a906af01
Merge pull request #191 from hamano/added_get_random_pid_error_handling
...
fix error handling when sql calling with unknown host.
2014-04-30 17:02:39 +04:00
badlop
65519cf262
Merge pull request #190 from hamano/mod_register_web_response_404
...
mod_register_web should response 404 instead of process crash.
2014-04-30 12:42:43 +02:00
badlop
a1b8c54c16
Merge pull request #187 from weiss/fix-ejabberdctl-output
...
Let ejabberdctl accept binary string arguments
2014-04-30 12:41:12 +02:00
HAMANO Tsukasa
a6408e9281
fix error handling when sql calling with unknown host.
2014-04-30 15:32:07 +09:00
HAMANO Tsukasa
0e0bd3329d
mod_register_web should response 404 instead of process crash.
2014-04-30 13:39:17 +09:00
Evgeny Khramtsov
9563b0228f
Merge pull request #177 from weiss/log-tls-sasl-external
...
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-30 00:38:18 +04:00
Evgeny Khramtsov
8419322884
Merge pull request #181 from weiss/check-tls-before-auth
...
Check TLS state before requesting SASL EXTERNAL for outgoing s2s connections
2014-04-30 00:36:08 +04:00
Evgeny Khramtsov
c37aa1b46d
Merge pull request #185 from weiss/verify-cert-for-s2s-out
...
Support certificate verification for outgoing s2s connections
2014-04-30 00:08:24 +04:00
Evgeny Khramtsov
599fdb9ac2
Merge pull request #186 from weiss/add-disconnect-command
...
New ejabberd command: disconnect_user/2
2014-04-29 15:41:41 +04:00
Holger Weiss
ebbceab93f
Translate disconnect_user/2 string sent to client
2014-04-29 11:56:28 +02:00
Holger Weiss
bb2c8b59f8
Avoid #state.lang type errors in corner cases
...
If #state.lang is used before being initialized to some binary string,
the translation code would crash.
2014-04-29 11:41:24 +02:00
Evgeny Khramtsov
4073394e7a
Merge pull request #182 from hamano/register_account_acl
...
fix checking acl in mod_register_web
2014-04-29 13:06:53 +04:00
Evgeny Khramtsov
29aead19d9
Merge pull request #179 from hamano/added_get_random_pid_error_handling
...
added get_random_pid/1 error handling
2014-04-29 13:05:58 +04:00
Holger Weiss
d09c268b20
Let ejabberdctl accept binary string arguments
...
Don't print the following message if an ejabberd command expects binary
string arguments: "This command cannot be executed using ejabberdctl.
Try ejabberd_xmlrpc."
2014-04-29 01:11:08 +02:00
Holger Weiss
6d1055abec
New ejabberd command: disconnect_user/2
2014-04-29 00:50:43 +02:00
Holger Weiss
49bdbf2895
Support certificate verification for outgoing s2s
...
Handle "s2s_use_starttls: required_trusted" the same way for outgoing
s2s connections as for incoming connections. That is, check the remote
server's certificate (including the host name) and abort the connection
if verification fails.
2014-04-28 01:42:02 +02:00
Holger Weiss
a21d2298af
XEP-0198: Turn some warnings into info messages
...
Don't log warnings on events that will happen during normal operation.
2014-04-28 01:01:30 +02:00
Holger Weiss
1aa4ed3f35
Don't mess with s2s out when aborting s2s in
...
Don't try to look up and close outgoing connections to a given server
when aborting incoming connections from that server due to certificate
verification errors. The ejabberd_s2s:find_connection/2 call actually
created one or more *new* connections if less than 'max_s2s_connections'
connections were found. Then, no more than one of those possibly new
connections were stopped by the ejabberd_s2s_out:stop_connection/1 call.
It's not really necessary to bother with outgoing connections at all,
here.
2014-04-28 00:17:05 +02:00
Holger Weiss
eabca82765
Send stream trailer before closing s2s connection
...
When aborting an incoming s2s connection due to certificate verification
errors, send a stream trailer before closing the socket.
2014-04-27 00:28:42 +02:00
HAMANO Tsukasa
71dba66330
fix checking acl in mod_register_web
2014-04-24 18:15:39 +09:00
Holger Weiss
d805d198ac
Check TLS state before requesting SASL EXTERNAL
...
Make sure a remote server can't circumvent "s2s_use_starttls: required"
by offering SASL EXTERNAL authentication over a non-TLS connection.
2014-04-24 11:04:10 +02:00
HAMANO Tsukasa
ffe9f3c192
added get_random_pid/1 error handling
2014-04-24 15:34:41 +09:00
HAMANO Tsukasa
219f9276d1
undefined ejabberd_socket:get_conn_type/1
2014-04-24 12:42:22 +09:00
Holger Weiss
f988aad940
Log TLS status for outgoing s2s with SASL EXTERNAL
2014-04-23 23:28:13 +02:00
HAMANO Tsukasa
9ec014c184
added error handling in mod_pubsub_odbc.
2014-04-23 23:35:34 +09:00
Holger Weiss
86e17c379c
Verify host name before offering SASL EXTERNAL
...
Prior to this commit, ejabberd handled certificate authentication for
incoming s2s connections like this:
1. Verify the certificate without checking the host name. On failure,
behave according to 's2s_use_starttls'. On success:
2. Offer SASL EXTERNAL.
3. If the remote server chooses SASL EXTERNAL, compare the authorization
identity against the certificate host name(s). On failure, abort the
connection unconditionally.
ejabberd now does this instead:
1. Verify the certificate and compare the certificate host name(s)
against the 'from' attribute of the stream header. On failure,
behave according to 's2s_use_starttls'. On success:
2. Offer SASL EXTERNAL.
3. If the remote server chooses SASL EXTERNAL, ignore the authorization
identity (if any) and consider the peer authenticated.
The old behavior was suggested by previous versions of XEP-0178, the new
behavior is suggested by the current version 1.1.
2014-04-23 11:45:17 +02:00
Holger Weiss
4bc8b6bc9f
Fix extraction of host names from certificates
2014-04-22 22:12:04 +02:00
badlop
37d4109e8a
Merge pull request #161 from weiss/fix-carbons
...
Let mod_carboncopy take care of messages sent to bare/unavailable JIDs
2014-04-22 13:52:11 +02:00
Holger Weiss
d350cc6361
Accept "extauth_cache: false"
...
Don't log a "configuration problem" message if "extauth_cache: false" is
explicitly specified, as that's a valid configuration setting as per the
documentation.
2014-04-16 14:15:14 +02:00
Paweł Chmielowski
7af7b7d3f0
Fix compilation on pre-R17
2014-04-15 17:05:25 +02:00
Paweł Chmielowski
d97b4fd9ca
Fix loading translation files on R17
2014-04-15 17:05:22 +02:00
Alexey Shchepin
f93758a3cd
Merge pull request #160 from runcom/protocol_options
...
Add option to specify openssl options
2014-04-15 19:01:21 +04:00
badlop
285c4c17cf
Merge pull request #146 from jamielinux/master
...
Update FSF address
2014-04-11 13:35:46 +02:00
Evgeniy Khramtsov
a21edc2f3a
Pretty print accepted transport address
2014-04-11 12:30:58 +02:00
Holger Weiss
b3b12effbc
Carbons: Handle unavailable resource like bare JID
...
As the session manager handles messages sent to unavailable resources
just like messages sent to bare JIDs, mod_carboncopy must do that, too.
That is, forward them only to those carbon-copy-enabled resources that
don't have a top priority, in order to avoid duplicates.
2014-04-08 23:32:30 +02:00
Antonio Murdaca
fbf71f86f3
Add option to specify openssl options
2014-04-08 18:46:52 +02:00
Holger Weiss
9d5426315f
Carbons: Also forward messages sent to bare JIDs
...
Don't ignore messages sent to bare JIDs, but forward them to all
carbon-copy-enabled resources that don't have the highest priority.
2014-04-07 22:10:08 +02:00
Holger Weiss
c114eb3736
XEP-0198: Don't bounce/resend forwarded messages
...
On connection timeout, drop any messages that were forwarded by some
encapsulating protocol, such as XEP-0280 carbon copies or XEP-0313
archive messages. Bouncing or resending them could easily lead to
unexpected results.
2014-04-07 21:21:11 +02:00
badlop
766ab1eb46
Merge pull request #158 from weiss/fix-lang-type
...
Fix a type error
2014-04-07 13:28:41 +02:00
badlop
76fb7d284a
Merge pull request #157 from weiss/fix-mod-update
...
Fix badarg issue on module update web site
2014-04-07 13:27:31 +02:00
Holger Weiss
37f409d254
Fix a type error
2014-04-06 00:39:51 +02:00
Holger Weiss
e02a4913d2
Fix badarg issue on module update web site
2014-04-05 23:23:44 +02:00
HAMANO Tsukasa
1250ee5d77
mod_register_web: check same acl as mod_register.
2014-04-04 04:07:29 +09:00
Badlop
8b9c49440a
Fix user_resources command, and ejabberd_xmlrpc parsing auth details in call
2014-03-31 16:51:47 +02:00
Badlop
a5a065290b
Small change in ejabberd_ctl output format to support bash completion
2014-03-26 16:43:53 +01:00
Badlop
ac0e199d36
Provide meaningful text to user when admin kicks session (EJAB-1455)
2014-03-26 16:01:37 +01:00
Holger Weiss
a97c716352
XEP-0198: Bounce unacked stanzas by default
...
If the new "resend_on_timeout" option is set to false (which it is by
default), bounce any unacknowledged stanzas instead of re-routing them.
2014-03-25 23:23:38 +01:00
Evgeniy Khramtsov
2150b10901
Fix service_info options processing
2014-03-25 09:52:57 +04:00
Evgeniy Khramtsov
5c36c44689
Remove annyoing warnings
2014-03-25 09:42:12 +04:00
Badlop
d5f90965d7
Fix ACLs syntax change (thanks to jokker23)(issue #140 )
2014-03-24 19:40:55 +01:00
Holger Weiss
2da6933bb7
Remove "fun" element from c2s #state
...
Memory consumption wise, local "fun" references are quite expensive.
2014-03-22 20:25:43 +01:00
Holger Weiss
e360c56f87
Support XEP-0198 session resumption
...
Implement the optional session resumption feature described in XEP-0198.
A client that supports this feature may now resume the previous session
(within a configurable number of seconds) if the connection was lost.
During resumption, ejabberd will retransmit any stanzas that hadn't been
acknowledged by the client.
2014-03-19 00:51:33 +01:00
badlop
2b527f5e9a
Merge pull request #149 from iulianlaz/carboncopy-fix-msg-back-to-original-sender
...
#148 Carbon copy sends message back to original sender solved
2014-03-16 20:59:49 +01:00
Holger Weiss
88a200e100
Remove some commented out code
...
The code that had been commented out at some earlier point in time would
now break XEP-0198.
2014-03-16 00:12:47 +01:00
Badlop
633d47f784
Update copyright dates to 2014 (EJAB-1679)
2014-03-13 12:30:57 +01:00
Holger Weiss
7d594086c3
Add initial XEP-0198 support (EJAB-532)
...
Implement partial support for XEP-0198: Stream Management. After
successful negotiation of this feature, the server requests an ACK for
each stanza transmitted to the client and responds to ACK requests
issued by the client. On session termination, the server re-routes any
unacknowledged stanzas. The length of the pending queue can be limited
by setting the "max_ack_queue" option to some integer value (default:
500). XEP-0198 support can be disabled entirely by setting the
"stream_management" option to false (default: true).
So far, stream management is implemented only for c2s connections, and
the optional stream resumption feature also described in XEP-0198 is not
(yet) supported.
This addition was originally based on a patch provided by Magnus Henoch
and updated by Grzegorz Grasza. Their code implements an early draft of
XEP-0198 for some previous version of ejabberd. It has since been
rewritten almost entirely.
2014-03-12 23:34:14 +01:00
iulianlaz
9ef1ad0b6e
#148 Carbon copy sends message back to original sender solved
2014-03-06 08:40:38 +00:00
Badlop
e211bf522e
Support XEP-0321: Remote Roster Management (EJAB-1381)
2014-02-26 18:02:37 +01:00
Badlop
46b2d91105
Convert DB details to string when calling odbc:connect/2 (EJAB-1681)
2014-02-26 17:26:46 +01:00
Badlop
c29ba14dbf
Don't provide current password in webinterface (github issue #137 )
2014-02-26 17:19:07 +01:00
Jamie Nguyen
8538997d61
Update FSF address
2014-02-22 10:27:40 +00:00
Holger Weiss
e82a79efd5
Add missing parenthesis
2014-02-21 23:33:13 +01:00
Badlop
63a7011c38
When occupant changes nick, include status 110 in stanzas sent to him
2014-02-14 16:22:14 +01:00
Badlop
4c8b6fe16b
Fixing mod_carboncopy sends carbons of carbons ( fixes #107 )
2014-01-23 17:29:24 +01:00
mrjameshamilton
5ccc6db093
Fixed parameter order in call to restore_room/3
2014-01-23 14:39:52 +00:00
Alexey Shchepin
9422164dda
Clear SASL state after finishing auth
2014-01-21 13:44:29 +02:00
Alexey Shchepin
cbbfd921b4
Fix for the previous commit
2014-01-21 11:54:18 +02:00
Alexey Shchepin
d63be79df9
Use 'to' field only in the first client stream initialization
2014-01-20 16:06:05 +02:00
Badlop
e107e78773
Fix auth verification in ejabberd_xmlrpc (thanks to Vicis)
2014-01-02 16:10:19 +01:00
Evgeniy Khramtsov
d03de1bb43
Fix some type specs and errors
2013-12-10 21:44:46 +10:00
Evgeniy Khramtsov
33764bb931
Add ejabberd_xmlrpc
2013-12-10 21:25:12 +10:00
Badlop
5a1300bc70
Add access rule to mod_roster (EJAB-72)
2013-12-04 14:57:44 +01:00
Christophe Romain
9c17163b55
bind values for get_parentnodes_tree
2013-12-03 10:51:01 +01:00
Christophe Romain
e11c835bd3
fix use of virtual nodetree
2013-12-03 10:34:59 +01:00
Alexey Shchepin
1dd94ac0d0
Support for OpenSSL ciphers list in ejabberd_c2s, ejabberd_s2s_in and ejabberd_s2s_out
2013-11-28 19:39:11 +02:00
Badlop
a6b0e18bde
add Pubsub data migration from mnesia to odbc (EJAB-1126)
...
By calling:
ejd2odbc:export_pubsub("localhost","/tmp/aa.txt").
it will generate SQL files like these:
/tmp/pubsub_item.txt
/tmp/pubsub_node.txt
/tmp/pubsub_state.txt
Conflicts:
src/ejabberd_admin.erl
src/ejd2odbc.erl
2013-11-14 19:29:16 +01:00
Evgeniy Khramtsov
89a17ba84a
Correctly convert ACLs into YAML representation
2013-11-07 02:43:43 +10:00
Evgeniy Khramtsov
a87b475361
Do not use functions from crypto module wherever possible
2013-11-05 20:07:38 +10:00
Evgeniy Khramtsov
b7c7d2747b
Fix some type errors
2013-11-05 19:49:30 +10:00
Evgeniy Khramtsov
c0240e7249
Do not try to start STUN application during config checks
2013-11-02 10:30:19 +10:00
Evgeniy Khramtsov
6dd31299cf
Avoid case clause crash when loading permanent rooms
2013-10-23 12:23:00 +10:00
Badlop
cd0381bab5
Fix display ACLs in WebAdmin
2013-10-01 23:23:01 +02:00
Badlop
2c09d7c8a7
Fix handling of format_status arguments (thanks to Nbaronov)
2013-09-26 17:19:56 +02:00
Badlop
389a99b2db
Fix bypass for tls-required (thanks to Zeha)
2013-09-26 16:41:57 +02:00
Evgeniy Khramtsov
07c8bf5064
Fix roster version support
2013-09-24 18:59:20 +10:00
Evgeniy Khramtsov
7fd91a4b12
Better web-handlers detection
2013-09-22 21:47:59 +10:00
Evgeniy Khramtsov
ae4356265f
Merge branch 'master' of github.com:processone/ejabberd
2013-09-19 19:00:08 +10:00
Evgeniy Khramtsov
a0396620f2
Reflect modules name changes in p1_mysql
2013-09-19 18:59:32 +10:00
Paweł Chmielowski
7e73ed88f7
Fix problem with decoding http headers over tls connections
...
This fixed GitHub issue 96.
2013-09-16 16:32:02 +02:00
Christophe Romain
63b2d21b13
clean subscriptions handling and avoid function_clause
2013-08-27 14:46:54 +02:00
Christophe Romain
1b8876bf55
fix build of Parents list in #pubsub_node
2013-08-27 14:46:35 +02:00
Christophe Romain
b82eeeeec9
fix call to get_session_pid with binary arguments
2013-08-27 14:46:22 +02:00
Evgeniy Khramtsov
e3483ef9e1
Do not rely on p1_logger_h module when lager is enabled
2013-08-27 17:45:07 +10:00
Evgeniy Khramtsov
91a74e3e27
Change configuration file format to YAML
2013-08-21 22:17:59 +10:00
Evgeniy Khramtsov
f68dfacbbf
Do not try to read/write the deprecated "config" table
2013-08-21 19:37:22 +10:00
Evgeniy Khramtsov
0b9754884e
Do not distribute the ACL table
2013-08-21 19:37:08 +10:00
Evgeniy Khramtsov
cc6dcd161c
Get rid of global configuration options
2013-08-21 19:36:35 +10:00
Evgeniy Khramtsov
807a1fe164
Fix timestamp processing
2013-07-23 15:27:18 +10:00
Evgeniy Khramtsov
8ce22b790d
Fix some type errors
2013-07-22 19:24:09 +10:00
Evgeniy Khramtsov
f75d78d3f5
Make it possible to import without cursor usage
2013-07-22 10:46:47 +10:00
Evgeniy Khramtsov
ca6463ed78
Typo fix
2013-07-22 00:22:05 +10:00
Evgeniy Khramtsov
d58148fa8d
Add SQL to Mnesia converter
2013-07-21 23:10:38 +10:00
Evgeniy Khramtsov
a2ead99c83
Make it possible to enable/disable TLS compression
2013-07-17 22:46:18 +10:00
Evgeniy Khramtsov
986f4d1a7f
Do not forget to re-define the crash.log path
2013-07-15 11:51:09 +10:00
Badlop
0d7a5476c0
Allow room member to get members list using XEP
2013-07-11 12:11:48 +02:00
Christophe Romain
4e72dd6751
fix badmatch in send_loop (EJAB-1650)
2013-07-10 09:47:49 +02:00
Christophe Romain
48819d163a
fix badmatch on remove_user on PEP nodes (EJAB-1649)
2013-07-09 21:50:56 +02:00
Christophe Romain
8621a8f006
fix invalid response on get_options when no options set (EJAB-1648)
2013-07-09 18:11:27 +02:00
Badlop
b66e4fbdc4
Apparently configure.erl is not needed anymore
2013-07-08 15:58:38 +02:00
Alexey Shchepin
b5623d6bee
gen_iq_handler:check_type was missing
2013-07-08 10:40:39 +03:00
Evgeniy Khramtsov
0aca3a4585
Improve the applications start-up
...
* Check if all modules present for every application loaded.
* Get rid of now obsoleted 'ejabberd_check' module.
2013-07-07 02:19:51 +10:00
Christophe Romain
0266207e9d
fix pubsub unsubscription without SubId on odbc
2013-07-04 15:13:21 +02:00
Christophe Romain
60600c341e
improve pubsub odbc use of i2l
2013-07-04 10:07:53 +02:00
Christophe Romain
ac3cd2ebaa
ip_adresse() does not need binary representation in config
2013-06-28 18:32:22 +02:00
Evgeniy Khramtsov
2636da0d98
Fix IDNA conversion
2013-06-28 02:45:42 +10:00
Badlop
91744733c1
Store only messages with body or subject (EJABS-2034)
2013-06-27 11:58:31 +02:00
Evgeniy Khramtsov
8a9743ab3b
Avoid custom loglevels processing for lager
2013-06-27 19:27:56 +10:00
Evgeniy Khramtsov
597934637c
Logger improvements.
...
lager:
* It is now possible to change the loglevel.
* Log rotation is now supported as well.
p1_logger:
* When rotating a log file, add suffix ".0" to the renamed file.
This is needed in order to be consistent with lager
rotation mechanism.
2013-06-27 19:03:33 +10:00
Evgeniy Khramtsov
aab70fc066
Fix external authentication
2013-06-26 12:30:32 +10:00
Christophe Romain
ae1af885ce
fix feature build on node disco#info
2013-06-25 14:49:22 +02:00
Badlop
9840b8395e
Fix previous commit
2013-06-25 13:46:21 +02:00
Badlop
b524e79f55
Normalize HTTP path (thanks to Justin Kirby)
2013-06-25 11:26:44 +02:00
Christophe Romain
277ba798fc
typo fix in spec
2013-06-24 22:38:15 +02:00
Christophe Romain
b07b820c4e
fix missing binarization switch on pep nodes
2013-06-24 19:56:27 +02:00
Christophe Romain
1cc76ebb68
cosmetic change
2013-06-24 19:56:14 +02:00
Christophe Romain
1cb03439f2
add missing list conversion
2013-06-24 18:05:42 +02:00
Christophe Romain
3976351c4d
decode_jid always gets binary(), encode_jid lets mod_pubsub handle conversion
2013-06-24 18:04:42 +02:00
Christophe Romain
6bfa34e8e0
minor improvements and binary fix
2013-06-24 16:31:38 +02:00
Christophe Romain
4195259d47
typo fix, related to commit 9194872
2013-06-24 16:29:43 +02:00
Christophe Romain
95546ac20d
remove obsolete node attribute
2013-06-24 13:55:30 +02:00
Christophe Romain
0e28e4b600
Merge branch 'master' of github.com:processone/ejabberd
2013-06-24 13:46:44 +02:00
Christophe Romain
831ae2927a
change default PEP config for simpler setup (EJAB-1494)
2013-06-24 13:46:27 +02:00
Christophe Romain
91948729e9
remove need of extra _odbc in pubsub plugin name
2013-06-24 13:43:11 +02:00
Christophe Romain
222a94300b
fix decode function for binaryzed data
2013-06-24 13:42:34 +02:00
Evgeniy Khramtsov
f9390f3e9a
Fix some dialyzer warnings
2013-06-24 20:04:56 +10:00
Evgeniy Khramtsov
7b07c2a9b2
Improve the type spec
2013-06-24 13:15:07 +10:00
Evgeniy Khramtsov
521bae7fa0
Get rid of useless clause
2013-06-24 13:13:43 +10:00
Evgeniy Khramtsov
a3354f5dc4
Do not generate LDAP's ASN.1 code when compiling ejabberd.
...
We need ASN.1 codec to decode messages into binaries, so we
fixed generated ELDAPv3.erl. A better solution is needed to be found.
2013-06-22 03:27:59 +10:00
Badlop
109ed1a8b1
According to XEP-0045, a MUC member is allowed to retrieve the members list
2013-06-21 11:43:23 +02:00
Christophe Romain
0c60718bef
fix empty itemid on publish when passing Access
2013-06-20 17:51:07 +02:00
Christophe Romain
4221d56c04
fix pubsub issue on binary switch
2013-06-20 17:07:40 +02:00
Evgeniy Khramtsov
4dc80dddd4
Fix all calls to functions of p1_tls application
2013-06-20 18:40:44 +10:00
Evgeniy Khramtsov
89c3cf3677
Shutdown rooms before starting test cases
2013-06-19 21:46:22 +10:00
Jerome Sautret
fedea8bca0
Added missing license and copyright headers.
2013-06-18 16:56:29 +02:00
Christophe Romain
c030e8e136
sync pubsub_odbc with last fix
2013-06-18 12:23:32 +02:00
Evgeniy Khramtsov
8ea41718ac
Fix node auto-creation
2013-06-18 04:11:54 +10:00
Christophe Romain
20598c7be4
sync and cleanup pubsub_odbc
2013-06-17 16:34:21 +02:00
Christophe Romain
08fc6df853
fix auto-create issue due to bad binary matching
2013-06-17 16:30:20 +02:00
Alexey Shchepin
62fb432e3e
Fixed broadcast messages handling
2013-06-17 16:41:02 +03:00
Alexey Shchepin
862a08e9eb
Fixed conversion to ezlib
2013-06-17 16:33:25 +03:00
Evgeniy Khramtsov
0baf4e6088
Advertise privacy lists support via disco#info
2013-06-17 16:10:30 +03:00
Evgeniy Khramtsov
7865c6a146
Don't include sub-elements in IQ results where it's not required
...
by the corresponding spec (RFC or XEP).
2013-06-17 16:09:54 +03:00
Evgeniy Khramtsov
b50a4948ed
Fix the error report of an incorrect certfile
2013-06-17 16:04:43 +03:00
Badlop
243d24015c
Remove old obsolete R14 code
2013-06-14 16:18:22 +02:00
Badlop
4c445b37fd
In frontends, if result is in binary then convert to string
2013-06-14 16:08:47 +02:00
Paweł Chmielowski
f6e39f64e2
Make ejabberd_ctl not die for ejabberd_commands with binary arguments
2013-06-14 16:08:02 +02:00
Christophe Romain
26b815f52d
cosmetic changes, move badly placed comments
2013-06-14 00:04:25 +02:00
Evgeniy Khramtsov
4d8f770624
Switch to rebar build tool
...
Use dynamic Rebar configuration
Make iconv dependency optional
Disable transient_supervisors compile option
Add hipe compilation support
Only compile ibrowse and lhttpc when needed
Make it possible to generate an OTP application release
Add --enable-debug compile option
Add --enable-all compiler option
Add --enable-tools configure option
Add --with-erlang configure option.
Add --enable-erlang-version-check configure option.
Add lager support
Improve the test suite
2013-06-13 11:11:02 +02:00
Badlop
0080f1f308
Detect correctly newer Darwin versions (EJAB-1594)
2013-06-06 12:24:18 +02:00
Christophe Romain
58e769d68f
fix getting ServerHost from Host due to binary portage (EJAB-1638)
2013-06-06 11:32:52 +02:00
Christophe Romain
c8cba04f05
access_createnode acl also applies to auto created nodes ported to pubsub_odbc
2013-06-06 11:11:37 +02:00
Badlop
d1e1191793
Handle multiple < and > in mod_muc_log plaintext mode (EJAB-1640)
2013-05-31 13:23:08 +02:00
Badlop
3025bfd3ff
Handle ~ control sequence in text of mod_muc_log (EJAB-1639)
2013-05-30 14:28:39 +02:00
Paul Donohue
089c664bad
Fix a bug when reading tuples from config
...
If the config contains a tuple of integers (for example, if a bind IP
address is specified) then strings_to_binary() calls tuple_to_list()
followed by strings_to_binary(), which then calls list_to_binary()
because the list looks like a string. Then list_to_tuple() is called on
the returned binary, causing a crash.
This patch corrects the problem by calling strings_to_binary1() instead,
which ensures that the value that is passed into list_to_tuple() is a
list.
2013-05-24 14:29:41 -04:00
Anton Ryzhov
e71650325b
Removed wrong option for ejabberd_service
module (since 174c16a1
)
2013-05-16 01:22:02 +04:00
Badlop
c0bf054583
Tweak ejabberd_listener to allow ejabberd_xmlrpc work properly
2013-05-14 18:50:54 +02:00
Badlop
80f165a55c
Fix get of announcement form
2013-04-25 16:00:24 +02:00
badlop
54667511f6
Merge pull request #62 from PaulSD/master
...
Fix errors when generating random binary strings
2013-04-25 03:48:55 -07:00
Badlop
d38ccbea6b
access_createnode acl also applies to auto created nodes (thanks to Matthias Rieber)
2013-04-25 12:37:16 +02:00
Badlop
dfee84374f
Include actor element in MUC stanzas when kicking (thanks to Purvesh Sahoo)(EJAB-1206)
2013-04-24 11:01:02 +02:00
Badlop
3e93fbfd2e
Revert "Include actor element in MUC stanzas when kicking (thanks to Purvesh Sahoo)(EJAB-1206)"
...
This reverts commit 066c47ca96
.
2013-04-23 13:57:18 +02:00
Badlop
066c47ca96
Include actor element in MUC stanzas when kicking (thanks to Purvesh Sahoo)(EJAB-1206)
2013-04-23 13:55:40 +02:00
Stephen Röttger
9fa415e557
SCRAM optional parameter parsing bugfix
...
The server gave an authentication error, if optional parameters
were present in the GS2 Header. Specifically, the "a=" parameter,
that can be used by admins to login as a different user.
2013-04-23 13:55:36 +02:00
Paul Donohue
b33a482582
Fix error when generating random binary strings
2013-04-19 15:30:13 -04:00
Badlop
c0afb1f282
Fix bug when getting room config
2013-04-15 11:14:32 +02:00
Badlop
abc1341b3f
Fix mod_http_fileserver work with binaries (GITHUB-59)
2013-04-12 12:55:49 +02:00
Badlop
c7eaa9aeac
ejabberd 13 requires Erlang/OTP R15B or higher (EJAB-1630)
...
Fix documents and remove useless code.
2013-04-11 17:12:53 +02:00
Janusz Dziemidowicz
74808b25a1
Change message type of carbon copies from 'chart' to 'chat'
2013-04-09 23:21:06 +02:00
Badlop
cbd3062365
Don't overwrite inetrc when installing (thanks to skeltoac)
2013-04-04 13:36:15 +02:00
Evgeniy Khramtsov
7a00622aa8
Merge branch 'master' of github.com:processone/ejabberd
2013-03-29 19:38:19 +10:00
Evgeniy Khramtsov
0d80e7e68a
Get rid of references to non-existent module
2013-03-29 19:38:01 +10:00
Evgeniy Khramtsov
299a0f823a
Fix several refactoring related bugs
2013-03-29 19:23:52 +10:00
Badlop
fc7360068a
Update version number to beta2
2013-03-29 10:04:30 +01:00
Badlop
4c2d2bd4e9
Add mod_carboncopy that implements XEP-0280 v0.8
2013-03-27 17:53:56 +01:00
Badlop
9b510579b3
Fix room configuration after binarization
2013-03-22 17:14:47 +01:00
Badlop
d901aa982b
Fix privacy list broadcast internal stanza after binarization
2013-03-22 13:57:45 +01:00
Badlop
2c6b12228a
Change version number
2013-03-20 20:54:53 +01:00
Badlop
f92a94a737
Copied PostgreSQL erlang library from ejabberd-modules SVN
2013-03-19 13:30:17 +01:00
Badlop
1b304aaf0a
Copied MySQL erlang library from ejabberd-modules SVN
2013-03-19 13:30:15 +01:00
Badlop
9deb294328
Accumulated patch to binarize and indent code
2013-03-14 10:33:02 +01:00
Badlop
9c41abde10
list_to_integer/2 only works in OTP R14 and newer
2013-03-14 10:25:41 +01:00
Badlop
907e239d4e
Fix bug when displaying offline messages in WebAdmin
2013-03-14 10:25:38 +01:00
Badlop
c058687bf9
Update ejabberd version number to 2.1.12
2013-02-05 17:22:34 +01:00
Badlop
3f93931409
New mod_muc_log option file_permissions (EJAB-1588)
2013-02-05 16:20:14 +01:00
Steven Lehrburger
426f1107c5
Fix issue with ejabberd_xmlrpc user auth and SCRAM
...
After enabling SCRAM password hashing and SSL in ejabberd, XMLRPC ejabberdctl commands were resulting in errors like this:
W(<0.2623.0>:ejabberd_xmlrpc:328) : Error -118
A problem '{error,invalid_account_data}' occurred executing the command user_sessions_info with arguments
It seems that this because ejabberd_commands was using a different authentication check than everything else, which wasn't properly taking account for potential password hashing. (Note I'm not really sure what AccountPassMD5 is doing, but it seems to be different than the ejabberd_auth_internal's SCRAM hasing.)
2013-02-04 12:57:56 +01:00
Badlop
2704378d43
Fix compatibility of LDAP support with Erlang R16A (EJAB-1612)
...
As explained in Erlang/OTP git log:
eldap: Remove calls to undocumented asn1rt* functions.
We are about to remove the old asn1rt* modules, so we must remove
the calls that eldap make to them. Since the calls are just a
sanity check, we can just remove the calls. Just doing the decode
will do roughly the same tests and generate similar exceptions.
2013-02-04 10:31:54 +01:00
Badlop
e500fd74ad
Fix warning about unused variable
2013-02-01 16:50:42 +01:00
Badlop
e7f85411fe
Update Hebrew translation (thanks to Isratine Citizen)
2013-01-31 17:27:47 +01:00
Badlop
15073aafa5
Fix angle brackets handle in MUC plaintext log (EJAB-1610)
2013-01-31 17:25:03 +01:00
Alexey Shchepin
0ae400533c
Update copyright dates
2013-01-24 16:25:13 +02:00
Evgeniy Khramtsov
d47dee8009
Make sure update_info returns atoms only (EJAB-1595) (Thanks to Jose M Herrero)
2013-01-03 20:26:16 +10:00
Alexey Shchepin
d5506a3ff0
Fixed signedness issue in tls_drv GET_DESCRYPTED_INPUT (EJAB-1591)
2012-12-20 14:01:45 +02:00
Remco Wendt
d81eb95cab
Added command to list all the vhosts registered in an ejabberd node
2012-12-19 15:00:57 +02:00
alexeyshch
1f290c8a29
Merge pull request #37 from rraptorr/tls
...
TLS driver impovements
2012-12-17 04:53:09 -08:00
Evgeniy Khramtsov
be33ab890e
Fix broken JPEG photo (EJAB-1526)
2012-12-12 18:08:24 +10:00
Badlop
2c26926689
Copy, fix and document export2odbc command from mod_admin_extra.erl
2012-11-26 13:22:29 +01:00
Evgeniy Khramtsov
9208f4dd50
Make terms serialization faster
2012-11-22 16:18:48 +02:00
Alexey Shchepin
dfcdf1ca7a
Fixed mod_offline:store_offline_msg argument (EJAB-1581)
2012-11-09 12:48:25 +02:00
Badlop
ec51ba7bc6
New Hebrew translation (thanks to Isratine Citizen)
2012-10-17 18:26:55 +02:00
Badlop
2dc2769c92
Log IP address when auth attempt fails (thanks to Zach Calvert)
2012-08-27 17:40:01 +02:00
Badlop
8a737f875f
Add SCRAM and remove MD5 support to ejabberd commands auth verification
2012-08-27 16:57:56 +02:00
Badlop
4147081f0b
Added clause so ejabberdctl number of arguments error report works with R15
2012-08-27 16:38:52 +02:00
Badlop
a47fd96cc8
On shutdown, first stop listeners, then modules (thanks to Vishal Xica)(EJAB-1566)
2012-07-25 13:02:21 +02:00
Badlop
4d54bce621
Send announce Message stanzas as Headline type instead of Normal
2012-07-24 18:35:41 +02:00
Janusz Dziemidowicz
5e7a1c8829
Detect OpenSSL version at runtime, not at compile time
2012-07-24 07:40:07 +02:00
Janusz Dziemidowicz
bc65b5008e
Enable DHE key exchange in TLS driver
2012-07-19 12:06:03 +02:00
Janusz Dziemidowicz
a407382d9f
Enable ECDHE key exchange in TSL driver
2012-07-18 22:33:38 +02:00
Janusz Dziemidowicz
d2d51381ec
Disable old and unsecure ciphers in TLS driver
...
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
2012-07-18 22:00:58 +02:00
Janusz Dziemidowicz
e06c1c49c1
Disable SSL 2.0 in TLS driver
...
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.
2012-07-18 21:57:28 +02:00
Evgeniy Khramtsov
0cc920579c
Fix regression introduced in odbc/mnesia merge
2012-07-17 23:35:16 +10:00
Janusz Dziemidowicz
efc0b0ba5a
Reduce size of XML stream state
...
This makes size of hibernated ejabberd_receiver a lot smaller (from
~290 words down to ~40).
2012-07-09 17:03:33 +03:00
Badlop
2bf8125abf
Allow multiple fqdn values in configuration (EJAB-1578)
2012-06-27 11:10:48 +02:00
Badlop
75756f0fc9
Check node name is available before starting ejabberd (EJAB-1572)
2012-06-08 17:33:21 +02:00
Badlop
bc077266d9
Fix MUC start when Mnesia tables don't exist yet
2012-06-08 16:39:15 +02:00
Badlop
a99c1e7031
Fix account registration
2012-06-06 12:55:35 +02:00
Badlop
bb026ef598
Update Slovak translation (thanks to Marek Bečka)
2012-05-15 12:00:04 +02:00
Badlop
e5d5ea49be
Revert "Update ejabberd version number to 2.1.11"
...
This reverts commit 453e249de3
.
2012-05-15 11:46:31 +02:00
Paweł Chmielowski
6c94d040fa
Repeated http-bind request should abort only requests with same rid
...
Before this change, when request with repeat rid was received any waiting
request was aborted (but only after next request was delivered). With this
change, only request with identical rid are aborted and this is done
immediately
2012-05-03 11:44:34 +02:00
Paweł Chmielowski
e8921d79ba
Receiving missing http-bind request shouldn't close waiting out-ouf-order request
2012-05-03 11:44:21 +02:00
Evgeniy Khramtsov
6719d9669b
Fix get_subscription_lists/4
2012-04-29 19:34:57 +10:00
Paweł Chmielowski
8b13226d00
Do not trigger item-not-found errors in mod_http_bind (part of EJABS-1827)
...
This changes what happens to request received with out of order rid,
previously response to such request was send immediately, and client was
free to submit another request, which triggered item-not-found if it was
delivered before request with missing rid.
This change make us wait for sending response to out of order request until
request with missing rid arrives. It also queues all outgoing data before
that condition is meet.
2012-04-27 13:23:19 +02:00
Evgeniy Khramtsov
437f68a9f3
Merge SQL and Mnesia code into one module (EJAB-1560)
2012-04-27 19:52:05 +10:00
Badlop
453e249de3
Update ejabberd version number to 2.1.11
2012-04-26 16:04:16 +02:00
Badlop
6e2003c2e2
Recompile translation files
2012-04-26 15:54:54 +02:00
Badlop
5ed8959eba
Update Italian translation (thanks to Luca Brivio)
2012-04-25 00:00:52 +02:00
Maxim Ignatenko
7623ebd327
mod_irc: Make use of MUC password
2012-04-24 15:21:46 +02:00
Badlop
522eb0fe9d
Update PO files manually according to the English fix
2012-04-24 13:52:59 +02:00
Badlop
7dd171322d
Fix English strings (thanks to Andreas van Cranenburgh)
2012-04-24 13:51:54 +02:00
Badlop
752652e56c
Update German translation again (thanks to Nikolaus Polak)
2012-04-24 13:51:04 +02:00
Badlop
2582a478ab
Update Portuguese-Brazil translation (thanks to Otávio Fernandes)
2012-04-23 09:58:03 +02:00
Badlop
52ff5de564
Update Polish translation (thanks to Zbyszek Żółkiewski)
2012-04-23 09:58:01 +02:00
Badlop
ba793af8b7
Update Norwegian translation (thanks to Stian B. Barmen)
2012-04-23 09:57:59 +02:00
Badlop
3304ecd1f0
Update Catalan translation (thanks to Jan Kusanagi)
2012-04-23 09:57:56 +02:00
Badlop
4e0394cab3
Update Japanese translation (thanks to Mako N)
2012-04-20 15:42:41 +02:00
Badlop
eaa963a840
Update Greek translation (thanks to James Iakovos Mandelis)
2012-04-20 15:42:38 +02:00
Evgeniy Khramtsov
31c13cc1c8
Remove useless mnesia call
2012-04-20 16:52:33 +10:00
Badlop
310aa7a00d
Update Czech translation (thanks to Jan Pinkas)
2012-04-18 11:13:36 +02:00
Badlop
fafd605d4d
Update Chinese translation (thanks to Shelley Shyan)
2012-04-18 10:13:34 +02:00
Badlop
078f3583f0
Update Turkish translation (thanks to Doruk Fisek)
2012-04-18 10:13:15 +02:00
Badlop
0b337329ba
Update Russian translation (thanks to Evgeniy Khramtsov)
2012-04-18 10:12:47 +02:00
Badlop
f5df63554f
Update Dutch translation (thanks to Andreas van Cranenburgh)
2012-04-18 10:12:22 +02:00
Badlop
46c4f46451
Update Esperanto translation (thanks to Andreas van Cranenburgh)
2012-04-18 10:12:09 +02:00
Badlop
e034864c12
Update German translation (thanks to Nikolaus Polak)
2012-04-18 10:11:36 +02:00
Badlop
91f38cc849
Extract new strings
2012-04-18 10:08:30 +02:00
Evgeniy Khramtsov
e616d2686f
Perform user part substitution in ldap_rfilter (EJAB-1555)
2012-04-17 17:19:53 +10:00
Badlop
5a09d671ab
Photos from LDAP not displayed in some clients, lacking TYPE (thanks to Alex Crycheck)(EJAB-1554)
2012-04-16 12:25:14 +02:00
Badlop
58d49d2867
Update Spanish translation
2012-04-15 00:21:22 +02:00
Badlop
8bb58ba3c3
Extract new strings
2012-04-15 00:21:15 +02:00
Badlop
49859683b0
Document how to provide a long announcement (EJAB-1553)
2012-04-14 23:29:55 +02:00
Badlop
169b83b36d
Handle the scenario of disabled mod_muc (EJAB-1553)
2012-04-14 23:29:30 +02:00
Evgeniy Khramtsov
86435ba9aa
ODBC support for mod_blocking
2012-04-12 14:22:56 +10:00
Paweł Chmielowski
e2d6bc95a4
Parse and encode https header names like native http parser does
...
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
2012-04-11 17:28:18 +02:00
Christophe Romain
06f570f4ff
return user affiliation for a specified node (thanks to Karim Gemayel) (EJAB-1294)
2012-04-11 16:50:36 +02:00
Badlop
730dfe8fc7
Add comments about Dialyzer warnings
2012-04-11 16:34:03 +02:00
Evgeniy Khramtsov
5619d39bd3
Add odbc modules to Makefile.win32
2012-04-09 14:53:15 +10:00
Evgeniy Khramtsov
959e0ff1c9
Remove obsoleted function call
2012-04-09 10:43:49 +10:00
Paweł Chmielowski
2c228e6414
Don't use binary:match to extract lines from binaries
...
This was added in R13B3, lets roll our own implementation to make sure it
works on older erlang versions.
2012-04-06 18:55:27 +02:00
Paweł Chmielowski
82468bff00
Fix makefile rules for building dll-s in Makefile.win32 files
2012-04-06 16:31:17 +02:00
Paweł Chmielowski
5f82846732
Parse correctly https request split into multiple packets
...
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.
2012-04-06 16:22:08 +02:00
Paweł Chmielowski
09c75af15c
Make sure that res is initialized in all cases
2012-04-06 12:00:43 +02:00
Alexey Shchepin
91964b1aba
Added missed tls:recv_data/2
2012-04-06 11:53:53 +02:00
Paweł Chmielowski
af2e9169e6
Don't ignore Length parameter in tls:recv
2012-04-06 11:53:21 +02:00
Alexey Shchepin
4637e2c66b
Avoid quadratic behavior in reading SSL data
2012-04-06 11:47:53 +02:00
Paweł Chmielowski
1f1a98d7ae
Properly handle HEAD request in mod_http_bind (this fixes EJAB-1538)
2012-04-06 11:47:38 +02:00
Evgeniy Khramtsov
cea23b055b
Get rid of duplicated code
2012-04-06 12:31:29 +10:00
Evgeniy Khramtsov
41a0eae0bd
ODBC support for mod_shared_roster
2012-04-04 20:37:43 +10:00
Evgeniy Khramtsov
5fab00011e
ODBC support for mod_irc
2012-04-03 20:23:41 +10:00
Evgeniy Khramtsov
ca5f028016
ODBC support for mod_vcard_xupdate
2012-04-02 15:21:54 +10:00
Evgeniy Khramtsov
b43444f674
ODBC support for mod_announce
2012-04-02 14:49:13 +10:00
Evgeniy Khramtsov
866085c918
Add ODBC exporting function for privacy table
2012-04-02 12:39:23 +10:00
Evgeniy Khramtsov
6ec5c7c4d8
Use proper module name
2012-03-31 22:56:51 +10:00
Evgeniy Khramtsov
6b3875814c
ODBC support for mod_muc
2012-03-31 21:41:54 +10:00
Evgeniy Khramtsov
3a51c801e1
Change log level from informational to error
2012-03-19 18:52:20 +10:00
Badlop
983da9c887
Relax digest-uri handling (thanks to Daniel Willmann)(EJAB-1529)
...
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.
2012-03-16 14:16:17 +01:00
Evgeniy Khramtsov
f7b6446c74
Assume we have only one CPU when an auto-detection fails (EJAB-1516)
2012-02-29 00:45:45 +10:00
Evgeniy Khramtsov
deb87f2dfa
Cache caps timestamp before the IQ-request is done
2012-02-28 16:38:24 +10:00
Alexey Shchepin
b1e2538488
Update copyright dates
2012-02-23 17:52:34 +02:00
Christophe Romain
f7ffdfa15d
Fix typo in xep number, bosh is xep0206 (thanks to Ludovic Bocquet)
2012-02-20 14:15:08 +01:00
Badlop
112a18f966
Work also with some unicode strings in PgSQL (EJAB-1490)
2012-02-14 13:18:18 +01:00
Badlop
7d623d5eb4
Option default_host for handling HTTP requests with ambiguous Host (EJAB-1261)
2012-02-14 11:35:52 +01:00
Evgeniy Khramtsov
4819738e8f
Receiver should not generate an exception
2012-02-14 17:03:08 +10:00
Evgeniy Khramtsov
89aa7baa5b
Replace a single quote with double quotes in
...
an ODBC escape (thanks to Vladislav Chugunov)
2012-01-31 11:18:37 +10:00
Badlop
95928a7cd4
http_bind webserver TLS fail on Chrome (thanks to Adam Langley)(EJAB-1530)
2012-01-19 13:21:25 +01:00
Alexey Shchepin
1ecc9ac48c
Fixed ejabberd_http:get_line
2012-01-19 12:20:48 +02:00
Badlop
288196c7e8
Foreign shared rosters items not pushed (thanks to Nathan Bruning)(EJAB-1509)
2012-01-04 19:21:31 +01:00
Badlop
0283c6cdfe
Revert "Update ejabberd version number to 2.1.10"
...
This reverts commit bcdae19141
.
2011-12-31 20:40:04 +01:00
Alexey Shchepin
d4e7b0cda0
mod_private.erl: misc errors cases fixes (thanks to Karim Gemayel)
2011-12-30 16:08:24 +02:00
Badlop
bcdae19141
Update ejabberd version number to 2.1.10
2011-12-23 12:27:30 +01:00
Badlop
684cac274d
Support undefinition of ssl:seed in R15B
2011-12-23 12:19:38 +01:00
Badlop
ce7b008b8f
Use the regexp frontend module (EJAB-921)
2011-12-23 11:33:33 +01:00
Alexey Shchepin
a3c58f2896
Always allow packets from user's server and bare jid in mod_privacy*
2011-12-22 16:37:47 +02:00
Alexey Shchepin
3839f1055a
Fixed the previous mod_blocking patch
2011-12-21 18:28:04 +02:00
Alexey Shchepin
94350ddb3a
Corrected mod_blocking hooks return value, activate "Blocked Contacts" privacy list after it is changed
2011-12-21 16:25:01 +02:00
Badlop
919cdc27db
Fix update with stripped beams (thanks to Jose M Herrero)(EJAB-1520)
2011-12-21 12:58:58 +01:00
Badlop
2029e39299
Support Erlang/OTP R15B driver (EJAB-1521)
2011-12-21 12:15:21 +01:00
Evgeniy Khramtsov
707bb0a321
Replace regexp with ejabberd_regexp
2011-12-19 16:10:48 +10:00
Evgeniy Khramtsov
298a4a3acf
Get rid of +driver option because it is incompatible with R15B
2011-12-19 16:01:04 +10:00
Badlop
262157c88d
Preliminary support for groupname@vhost in Displayed Groups (EJAB-506)
2011-12-15 17:27:28 +01:00
Badlop
37107af7b4
Fix command "update" to return response in the expected format
2011-12-08 19:39:36 +01:00
Badlop
13a9ca65a4
Don't reveal invitee's resource when room informs invitor
2011-12-08 16:35:31 +01:00
Badlop
d3369c83e7
Add callback function print_state/1 for behavior p1_fsm
2011-12-08 12:50:40 +01:00
Badlop
48308042b6
Use the regexp frontend module (EJAB-921)
2011-12-08 12:40:04 +01:00
Badlop
d30ad8ba28
Frontend module to Re and Regexp (EJAB-921)
2011-12-08 12:39:58 +01:00
Pablo Polvorin
cf973f27bb
Prevent overload of incomming s2s connections
...
Three changes were introduced:
1) ejabberd_s2s_in now uses p1_fsm instead of gen_fsm. And uses
the {max_queue, N} option to kill the process if its input
queue grows too much.
2) If a ejabberd_s2s_in process is overload and killed, the server
that originated that connection is not allowed to connect back
to us for X seconds (set to 60seconds on the source)
3) The list of blocked (both statically and dynamically by the above
method) host is now also checked for hosts authenticating by
starttls+sasl. Previusly it was only used during dialback.
2011-12-02 15:30:20 -03:00
Pablo Polvorin
87df27109a
Fix bug on s2s shaper when TLS is used
...
The shaper was not enabled if the remote server authenticates
using a certificate instead of dialback.
2011-12-01 13:16:21 -03:00
Christophe Romain
89e4e822bf
add hooks for node creation/deletion (EJAB-1470)
2011-11-29 14:13:13 +01:00
Badlop
b89d4c7476
Use httpc instead of the deprecated http
2011-11-26 17:20:06 +01:00
Badlop
ee968b5573
Fix error in mod_vcard when lowercasing some vjud search result fields (EJAB-1490)
2011-11-26 17:08:17 +01:00
Badlop
1f97740cfa
Avoid a possible race condition
2011-11-26 17:03:24 +01:00
Evgeniy Khramtsov
944791e888
Fix presence problem after first unavailable (thanks to Christopher Faulet) (EJAB-1466)
2011-11-09 15:09:02 +10:00
Badlop
0656377165
Support to update modules in R14B04 and higher
2011-11-03 19:47:11 +01:00
Evgeniy Khramtsov
96800e9b75
Get rid of useless mnesia transaction (EJAB-1502)
2011-10-14 16:57:51 +10:00
Badlop
c1d479f863
Set ejabberd version to 2.1.x
2011-10-13 17:56:19 +02:00
Badlop
4be7984a0e
Update ejabberd version number to 2.1.9
2011-09-26 18:11:18 +02:00
Evgeniy Khramtsov
39bc499b10
Fix instruction and error text
2011-09-26 20:00:43 +10:00
Evgeniy Khramtsov
de4d4a4bbb
Change "muc#role" field type to "hidden"
2011-09-26 19:54:55 +10:00
Evgeniy Khramtsov
8631dd14e9
Correct lists:keysearch output processing and fix dialyzer warning
2011-09-26 19:06:34 +10:00
Evgeniy Khramtsov
e7d12f4b9e
Code cleanup
2011-09-26 18:44:41 +10:00
Maxim Ignatenko
f17a531e15
Use treap correctly
2011-09-26 11:16:30 +03:00
Maxim Ignatenko
ff57c8a58c
Apply patch from Evgeniy Khramtsov
2011-09-26 11:16:30 +03:00
Maxim Ignatenko
499b884c67
Use treap for keeping last voice request timestamps
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
0c261fb903
Fix voice request/approvement detection and extract_jid_from_voice_approvement/1
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
322263fd5c
Fix typo
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
845f5cabec
Fix patterns in check_voice_request_fields/2 and check_voice_approvement_fields/2
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
f919349173
Use more pattern-matching
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
a91ae03dc6
Remove try/catch
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
faed7698c2
Use pattern matching in check_voice_request_fields/2 and check_voice_approvement_fields/2
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
eb8347f92b
Reverse arguments order for timer:now_diff/2
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
c53ffe6dc5
Fix return value inconsistency in last_voice_request_time/2
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
7c8eab4f43
Use jlib:parse_xdata_submit/1 in is_voice_request/1 and is_voice_approvement/1
2011-09-26 11:16:29 +03:00
Maxim Ignatenko
b1d8168dd3
Use bare JID as key in state.last_voice_request_time
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
c196c1f5e5
Use lists:foreach instead of lists:map in send_voice_request/2
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
604563af76
Remove needless time conversions
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
6848d3affe
Ignore any extra elements in voice approvement form submission
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
6708914e99
Add 2 room config options
...
- Allow voice requests?
- Minimum interval between voice requests
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
5921f9c506
Simple rate control
...
Visitor allowed to send new voice request only after specified amount of
time (or after rejoining).
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
6193ed63b1
Voice approvement support
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
18dd0d08cb
Implement basic voice request processing logic.
...
No rate control or configuration for now
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
8dd6f128bf
Implement voice approvement detection and remove some debug code
2011-09-26 11:16:28 +03:00
Maxim Ignatenko
04267930de
Fix form instructions
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
d83716dece
Use ejabberd_router:route/3 directly, instead of send_packet_to/3
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
c77358bdc1
Use exception handling in is_invitation/1
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
44987479a5
Fix exception handling in is_voice_request/1
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
30d89abf66
Implemented sending voice request and fixed some bugs
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
f175be6b78
Add function for detecting voice requests
2011-09-26 11:16:27 +03:00
Maxim Ignatenko
2a41ca0628
More correct dispatching of normal messages to conference room
...
is_invitation/1 function returns true if <x> element of message is
an invitation
2011-09-26 11:16:27 +03:00
Janusz Dziemidowicz
c4f9a050c9
Decrease CPU usage caused by tls:send with large data.
...
Sending one large chunk of data with tls:send eats lots of
CPU power and blocks whole Erlang emulator. This is caused by the
fact that encrypted output is read from memory BIO in 1k chunks.
Memory BIO, after reading data, shifts the remaining part.
If large chunks of data (few MB) is sent and then read in 1k
chunks, then a _lot_ of shifting is performed eating CPU.
The solution is to simply allocate binary of the needed size
(amount of data in memory BIO can be retrieved with
BIO_ctrl_pending) and then issue only one read that reads the
whole data.
2011-09-25 00:23:31 +02:00
Badlop
32ff6b56eb
Fix mod_muc_log crash when first log entry is room being destroyed (EJAB-1499)
2011-09-23 17:00:50 +02:00
Christophe Romain
33c0ebb100
fix broken PEP after EJAB-1498 (thanks to Karim Gemayel)
2011-09-22 20:51:59 +02:00
Badlop
cb9aecf35e
ejabberdctl doesn't support parameters with blankspaces (EJAB-1458)
...
Revert "Escape output from ctlexec() to erl script (thanks to Dan Scott)(EJAB-1399)"
This reverts commit 6dea2d2307
.
2011-09-22 16:18:04 +02:00
Christophe Romain
d5b4d67858
Fix Denial of Service when user sends malformed publish stanza (thanks to Oleg Smirnov) (EJAB-1498)
2011-09-21 14:39:50 +02:00
Badlop
9f4ae07100
added svg mimetype to default content types (thanks to Markus Kohlhase)
2011-09-20 16:50:22 +02:00
Badlop
32fc36b17d
Add support for @online@ to add_user_to_group
2011-09-20 16:44:51 +02:00
Evgeniy Khramtsov
33766a124d
New option support: ldap_deref_aliases (EJAB-639)
2011-09-19 16:58:55 +10:00
Evgeniy Khramtsov
ede8d57373
Fix dialyzer warnings
2011-09-17 10:48:52 +10:00
Evgeniy Khramtsov
2494e39c9e
Fix dialyzer warnings
2011-09-15 16:59:45 +10:00
Badlop
07fdd089a0
No need to explicitly skip old useless tables, simply fix keep_tables
2011-09-14 12:15:53 +02:00
Evgeniy Khramtsov
228a587fc5
Fix previous commit
2011-09-09 12:40:07 +10:00
Evgeniy Khramtsov
e432ff58f9
Avoid crash when performing admin action
2011-09-09 12:34:06 +10:00
Badlop
b8969f68e0
Fixed support for multi-resource occupants (EJAB-305)
2011-09-08 16:10:38 +02:00
Badlop
dbb2d1c229
Fix room config change logging, due to allow_private_messages_from_visitors
2011-09-08 12:34:25 +02:00
Badlop
609b7ed5c5
Support to import XML files without password-format attribute
2011-09-08 11:41:45 +02:00
Badlop
20f3fc96c3
Fix SCRAM to support attributes which value has only one character
2011-09-05 23:21:38 +02:00
Evgeniy Khramtsov
0fde148a9f
Fix dialyzer warnings
2011-09-05 22:00:50 +10:00
Evgeniy Khramtsov
6b0eb1f09d
Reorganize the code to shut up the dialyzer
2011-09-05 21:27:31 +10:00
Evgeniy Khramtsov
f3c90ee266
Get rid of useless check
2011-09-05 21:06:18 +10:00
Evgeniy Khramtsov
2482c9c5ed
Merge set_affiliation/3 and set_affiliation_and_reason/4 into set_affiliation/4
2011-09-05 20:53:01 +10:00
Badlop
da555fb908
Fix SCRAM auth of uppercase passwords (EJAB-1196)
2011-09-05 12:50:24 +02:00
Evgeniy Khramtsov
7ae7d6315f
Remove useless clauses
2011-09-05 18:07:50 +10:00
Evgeniy Khramtsov
eccb499346
Add some magic in order to shut up the dialyzer (because I do not want to replace the macro with a function)
2011-09-05 17:33:51 +10:00
Evgeniy Khramtsov
0c1796ea40
Fix potential case-clause crash
2011-09-05 17:27:15 +10:00
Evgeniy Khramtsov
826fab9999
Remove useless case clause
2011-09-05 17:12:45 +10:00
Evgeniy Khramtsov
3b95108a3a
Replace VVALUEL macro with function in order to shut up the dialyzer
2011-09-05 17:09:36 +10:00
Evgeniy Khramtsov
ab2a298ebf
Merge branch '2.1.x' of git+ssh://gitorious.process-one.net/ejabberd/mainline into 2.1.x
2011-09-05 16:53:10 +10:00
Evgeniy Khramtsov
8b5fa88b6f
Export do_client_version/3 in order to shut up the dialyzer
2011-09-05 16:52:36 +10:00
Evgeniy Khramtsov
de712e5ccb
Remove useless case clauses
2011-09-05 16:48:04 +10:00
Evgeniy Khramtsov
ffdf5cb206
Remove useless case clause
2011-09-05 16:47:18 +10:00