Software / code / prosody
Annotate
util-src/Makefile @ 8791:8da11142fabf
muc: Allow clients to change multiple affiliations or roles at once (#345)
According to XEP-0045 sections 9.2, 9.5 and 9.8 affiliation lists and role
lists should allow mass-modification. Prosody however would just use the
first entry of the list and ignore the rest. This is fixed by introducing
a `for` loop to `set` stanzas of the respective `muc#admin` namespace.
In order for this loop to work, the error handling was changed a little.
Prosody no longer returns after the first error. Instead, an error reply
is sent for each malformed or otherwise wrong entry, but the loop keeps
going over the other entries. This may lead to multiple error messages
being sent for one client request. A notable exception from this is when
the XML Schema for `muc#admin` requests is violated. In that case the loop
is aborted with an error message to the client.
The change is a bit bigger than that in order to have the loop only for
`set` stanzas without changing the behaviour of the `get` stanzas. This is
now more in line with trunk, where there are separate methods for each
stanza type.
References: #345
| author | Lennart Sauerbeck <devel@lennart.sauerbeck.org> |
|---|---|
| date | Sat, 18 Mar 2017 18:47:28 +0100 |
| parent | 7615:940603e99032 |
| rev | line source |
|---|---|
|
442
722f63c70a77
Makefile now works on windows with Microsoft's compiler
Waqas Hussain <waqas20@gmail.com>
parents:
418
diff
changeset
|
1 |
|
463
a2452d3bd828
Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents:
445
diff
changeset
|
2 include ../config.unix |
|
418
004c278154dc
Add rough Makefile for util-src/
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 |
|
7615
940603e99032
configure: Move -ggdb flag here from util-src/Make
Kim Alvefur <zash@zash.se>
parents:
7613
diff
changeset
|
4 CFLAGS+=-I$(LUA_INCDIR) |
|
418
004c278154dc
Add rough Makefile for util-src/
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 |
|
6877
020ededc84a6
util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents:
6876
diff
changeset
|
6 INSTALL_DATA=install -m644 |
|
020ededc84a6
util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents:
6876
diff
changeset
|
7 TARGET?=../util/ |
|
020ededc84a6
util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents:
6876
diff
changeset
|
8 |
|
7117
2b4432cc9c29
Add util.ringbuffer, a ringbuffer with a file handle like interface
Kim Alvefur <zash@zash.se>
parents:
6886
diff
changeset
|
9 ALL=encodings.so hashes.so net.so pposix.so signal.so table.so ringbuffer.so |
|
6876
d1fc95d22f33
util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents:
6610
diff
changeset
|
10 |
|
7187
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
11 ifdef RANDOM |
|
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
12 ALL+=crand.so |
|
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
13 endif |
|
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
14 |
|
4396
03b59a511671
Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents:
3964
diff
changeset
|
15 .PHONY: all install clean |
|
2319
8dca45e17438
util-src/Makefile: Clean up makefile (re-commit because MattJ shouldn't commit anything at 3AM)
Brian Cully <bjc@junctionnetworks.com>
parents:
2022
diff
changeset
|
16 .SUFFIXES: .c .o .so |
|
8dca45e17438
util-src/Makefile: Clean up makefile (re-commit because MattJ shouldn't commit anything at 3AM)
Brian Cully <bjc@junctionnetworks.com>
parents:
2022
diff
changeset
|
17 |
|
6876
d1fc95d22f33
util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents:
6610
diff
changeset
|
18 all: $(ALL) |
|
4396
03b59a511671
Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents:
3964
diff
changeset
|
19 |
|
6876
d1fc95d22f33
util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents:
6610
diff
changeset
|
20 install: $(ALL) |
|
6877
020ededc84a6
util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents:
6876
diff
changeset
|
21 $(INSTALL_DATA) $^ $(TARGET) |
|
4396
03b59a511671
Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents:
3964
diff
changeset
|
22 |
|
03b59a511671
Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents:
3964
diff
changeset
|
23 clean: |
|
7187
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
24 rm -f $(ALL) $(patsubst %.so,%.o,$(ALL)) |
|
4396
03b59a511671
Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents:
3964
diff
changeset
|
25 |
|
6881
5886efd95c11
util-src/Makefile: Don't make exceptions for how to build .so for util.hashes and util.encodings
Kim Alvefur <zash@zash.se>
parents:
6880
diff
changeset
|
26 encodings.so: LDLIBS+=$(IDNA_LIBS) |
|
3963
18b82491dc88
util-src/Makefile: Clean up and remove unnecessary all linking
Matthew Wild <mwild1@gmail.com>
parents:
3769
diff
changeset
|
27 |
|
6886
27f5a76e3fa5
configure,util-src/Makefile: Make a variable that includes -l for OpenSSL (like with IDNA_LIBS)
Kim Alvefur <zash@zash.se>
parents:
6882
diff
changeset
|
28 hashes.so: LDLIBS+=$(OPENSSL_LIBS) |
|
3762
f02bac902a1e
util.encodings: Support for ICU for IDNA operations.
Tobias Markmann <tm@ayena.de>
parents:
3334
diff
changeset
|
29 |
|
7187
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
30 crand.o: CFLAGS+=-DWITH_$(RANDOM) |
|
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
31 crand.so: LDLIBS+=$(RANDOM_LIBS) |
|
3d2c2f0809ee
util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents:
7117
diff
changeset
|
32 |
|
6880
8678def0e53b
util-src/Makefile: Tell Make how to build .so from .o in a modern way (Let built-in rules handle .o)
Kim Alvefur <zash@zash.se>
parents:
6879
diff
changeset
|
33 %.so: %.o |
|
8678def0e53b
util-src/Makefile: Tell Make how to build .so from .o in a modern way (Let built-in rules handle .o)
Kim Alvefur <zash@zash.se>
parents:
6879
diff
changeset
|
34 $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS) |