dynamic expansion will not be dynamically expanded in ldap configuration
Hello, I'm trying to configure ldap module for freeradius. For group membership I have this configuration: membership_filter = "(&(uid=%{User-Name})(objectClass=posixAccount))" but whenever I start freeradius, I get the error /etc/freeradius/mods-enabled/ldap[176]: Found dynamic expansion in string which will not be dynamically expanded where the membership_filter option is at line 176 of the ldap file. And when I user logins, there is no group search in the ldap, only a search to find the user. What am I doing wrong? -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 22, 2015, at 3:19 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm trying to configure ldap module for freeradius. For group membership I have this configuration:
membership_filter = "(&(uid=%{User-Name})(objectClass=posixAccount))"
but whenever I start freeradius, I get the error
/etc/freeradius/mods-enabled/ldap[176]: Found dynamic expansion in string which will not be dynamically expanded
It's an issue which was fixed, and will be in 3.0.8. Alan DeKok.
El 22/04/15 a las 12:49, Alan DeKok escribió:
On Apr 22, 2015, at 3:19 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm trying to configure ldap module for freeradius. For group membership I have this configuration:
membership_filter = "(&(uid=%{User-Name})(objectClass=posixAccount))"
but whenever I start freeradius, I get the error
/etc/freeradius/mods-enabled/ldap[176]: Found dynamic expansion in string which will not be dynamically expanded
It's an issue which was fixed, and will be in 3.0.8.
Is it any estimation on when it will be released? -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On 22 Apr 2015, at 13:15, Angel L. Mateo <amateo@um.es> wrote:
El 22/04/15 a las 12:49, Alan DeKok escribió:
On Apr 22, 2015, at 3:19 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm trying to configure ldap module for freeradius. For group membership I have this configuration:
membership_filter = "(&(uid=%{User-Name})(objectClass=posixAccount))"
but whenever I start freeradius, I get the error
/etc/freeradius/mods-enabled/ldap[176]: Found dynamic expansion in string which will not be dynamically expanded
It's an issue which was fixed, and will be in 3.0.8.
Is it any estimation on when it will be released?
It shouldn't be a hard failure unless you're using v3.1.x. Make sure you're building from v3.0.x where it should just be a warning. -Arran Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS development team FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
On 22 Apr 2015, at 13:32, Arran Cudbard-Bell <a.cudbardb@freeradius.org> wrote:
On 22 Apr 2015, at 13:15, Angel L. Mateo <amateo@um.es> wrote:
El 22/04/15 a las 12:49, Alan DeKok escribió:
On Apr 22, 2015, at 3:19 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm trying to configure ldap module for freeradius. For group membership I have this configuration:
membership_filter = "(&(uid=%{User-Name})(objectClass=posixAccount))"
but whenever I start freeradius, I get the error
/etc/freeradius/mods-enabled/ldap[176]: Found dynamic expansion in string which will not be dynamically expanded
It's an issue which was fixed, and will be in 3.0.8.
Is it any estimation on when it will be released?
It shouldn't be a hard failure unless you're using v3.1.x.
Make sure you're building from v3.0.x where it should just be a warning.
Or I guess you were previously building from. I though't we'd made this a non fatal error, due the likelihood that places would be missed... -Arran Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS development team FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
El 22/04/15 a las 14:47, Arran Cudbard-Bell escribió:
It shouldn't be a hard failure unless you're using v3.1.x.
Make sure you're building from v3.0.x where it should just be a warning.
Or I guess you were previously building from. I though't we'd made this a non fatal error, due the likelihood that places would be missed...
I have built it from source v3.0.7. My problem is that although it's a warning, my ldap configuration does not make any ldap search for groups. -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
El 23/04/15 a las 08:39, Angel L. Mateo escribió:
El 22/04/15 a las 14:47, Arran Cudbard-Bell escribió:
It shouldn't be a hard failure unless you're using v3.1.x.
Make sure you're building from v3.0.x where it should just be a warning.
Or I guess you were previously building from. I though't we'd made this a non fatal error, due the likelihood that places would be missed...
I have built it from source v3.0.7.
My problem is that although it's a warning, my ldap configuration does not make any ldap search for groups.
I have seen that 3.0.8 has already been released, so I have upgraded (in my test environment). Now I don't have the "dynamic expansion..." error, but ldap module is still not searching for groups. In my ldap I have my users and groups with a posix schema. Primary group of the user are in the gidNumber attribute of the user. This group has a posixGroup entry in the ldap. In this entry there are memberUid attributes for the users belonging to the group (but this is not its primary group). So, in my ldap module configuration I have: group { base_dn = '<my base dn>' filter = '(objectClass=posixGroup)' name_attribute = gidNumber membership_filter = "(|(&(uid=%{%{Stripped-User-Name}:-%{User-Name}})(objectClass=posixAccount))(&(objectClass=posixGroup)(memberUid=%{%{Stripped-User-Name}:-%{User-Name}})) membership_attribute = 'uid' } and in the site configuration: authorize { preprocess suffix files ldap mschap pap expiration } Then, in my users file I have something like: DEFAULT Realm == um.es, Ldap-Group == 1001, Auth-Type := Reject Reply-Message = "..." Fall-Through = No DEFAULT Realm == um.es Fall-Through = No but, radius never make any search to match the group of the users. Any idea? -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 23, 2015, at 3:23 AM, Angel L. Mateo <amateo@um.es> wrote:
Now I don't have the "dynamic expansion..." error, but ldap module is still not searching for groups.
The ldap module does group checks in certain circumstances... such as when you use LDAP-Group. It does that in all of my tests. If it's not working for you, it's probably because you're not actually using LDAP-Group.
In my ldap I have my users and groups with a posix schema. Primary group of the user are in the gidNumber attribute of the user. This group has a posixGroup entry in the ldap. In this entry there are memberUid attributes for the users belonging to the group (but this is not its primary group).
That's all good.
So, in my ldap module configuration I have: ... and in the site configuration:
I think I send a message to this list EVERY DAY saying "post the debug output. don't post the config". What, exactly, does it take for the message to get through?
Then, in my users file I have something like:
Again, that's nice, but probably not enough.
DEFAULT Realm == um.es, Ldap-Group == 1001, Auth-Type := Reject Reply-Message = "..." Fall-Through = No
DEFAULT Realm == um.es Fall-Through = No
but, radius never make any search to match the group of the users.
Any idea?
READ THE DEBUG OUTPUT. I'll bet money that there's ANOTHER "users" file entry which is being matched, AND you don't have a Fall-Through for the first one. So the DEFAULT you posted above never gets matched. The process here isn't difficult. READ THE DEBUG OUTPUT. Check that the server is using the modules you expect it to use. Check that the server is using the configuration you expect it to use. Check that the server is matching "users" file entries you expect it to match. This is computing 101. It's not magic. It's not random chance. It's brain-dead, dumb, literal, exact, and consistent. The main reason you haven't solved this already is that you haven't checked to see if the server is doing what you think it's doing. You're looking at the inputs, and wondering why the outputs are wrong. You SHOULD be looking at the process which turns the inputs into the outputs: the debug log. It's like trying to figure out why your TV won't work, but you refuse to ever look at the screen. And on the screen, there's a big message saying "FIRMWARE UPDATE REQUIRED". You won't ever discover that message by looking at the inputs. Alan DeKok.
I'm sorry for not posting debug output, just the config, but when I asked in this list was because I made a lot of tests and checks before. I have configure a clean environment (site) for testing. This is my complete users file in this test environment (attached is the debug output): DEFAULT Ldap-Group == 1001, Auth-Type := Reject Reply-Message = "You are not authorized", Fall-Through = No DEFAULT Fall-Through = No The entry matched is the second, but an ldap search for the group is never done (I have checked it in my ldap's logs) El 23/04/15 a las 14:29, Alan DeKok escribió:
On Apr 23, 2015, at 3:23 AM, Angel L. Mateo <amateo@um.es> wrote:
Now I don't have the "dynamic expansion..." error, but ldap module is still not searching for groups.
The ldap module does group checks in certain circumstances... such as when you use LDAP-Group. It does that in all of my tests. If it's not working for you, it's probably because you're not actually using LDAP-Group.
In my ldap I have my users and groups with a posix schema. Primary group of the user are in the gidNumber attribute of the user. This group has a posixGroup entry in the ldap. In this entry there are memberUid attributes for the users belonging to the group (but this is not its primary group).
That's all good.
So, in my ldap module configuration I have: ... and in the site configuration:
I think I send a message to this list EVERY DAY saying "post the debug output. don't post the config".
What, exactly, does it take for the message to get through?
Then, in my users file I have something like:
Again, that's nice, but probably not enough.
DEFAULT Realm == um.es, Ldap-Group == 1001, Auth-Type := Reject Reply-Message = "..." Fall-Through = No
DEFAULT Realm == um.es Fall-Through = No
but, radius never make any search to match the group of the users.
Any idea?
READ THE DEBUG OUTPUT.
I'll bet money that there's ANOTHER "users" file entry which is being matched, AND you don't have a Fall-Through for the first one. So the DEFAULT you posted above never gets matched.
The process here isn't difficult. READ THE DEBUG OUTPUT. Check that the server is using the modules you expect it to use. Check that the server is using the configuration you expect it to use. Check that the server is matching "users" file entries you expect it to match.
This is computing 101. It's not magic. It's not random chance. It's brain-dead, dumb, literal, exact, and consistent. The main reason you haven't solved this already is that you haven't checked to see if the server is doing what you think it's doing. You're looking at the inputs, and wondering why the outputs are wrong. You SHOULD be looking at the process which turns the inputs into the outputs: the debug log.
It's like trying to figure out why your TV won't work, but you refuse to ever look at the screen. And on the screen, there's a big message saying "FIRMWARE UPDATE REQUIRED". You won't ever discover that message by looking at the inputs.
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 24, 2015, at 2:27 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm sorry for not posting debug output, just the config, but when I asked in this list was because I made a lot of tests and checks before.
I have configure a clean environment (site) for testing. This is my complete users file in this test environment (attached is the debug output):
Did you read it? Did you check that the entry in the "users" file is being matched?
The entry matched is the second, but an ldap search for the group is never done (I have checked it in my ldap's logs)
Well, read the debug output to see what's going on. Alan DeKok.
El 24/04/15 a las 13:48, Alan DeKok escribió:
On Apr 24, 2015, at 2:27 AM, Angel L. Mateo <amateo@um.es> wrote:
I'm sorry for not posting debug output, just the config, but when I asked in this list was because I made a lot of tests and checks before.
I have configure a clean environment (site) for testing. This is my complete users file in this test environment (attached is the debug output):
Did you read it? Did you check that the entry in the "users" file is being matched?
Of course I did. And the entry matched in the users file is the wrong one. Before the matched is the same entry, but with an Ldap-Group check, so I'm supposing that freeradius should look for groups in the ldap, and it didn't do it (maybe I'm wrong with this supposition)
The entry matched is the second, but an ldap search for the group is never done (I have checked it in my ldap's logs)
Well, read the debug output to see what's going on.
I have read more than once. The problem is that I can't find any output indicating why it is not searching for ldap-group. Maybe I'm too obfuscated, but I didn't found anything. -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 27, 2015, at 2:08 AM, Angel L. Mateo <amateo@um.es> wrote:
El 24/04/15 a las 13:48, Alan DeKok escribió:
Well, read the debug output to see what's going on.
I have read more than once. The problem is that I can't find any output indicating why it is not searching for ldap-group. Maybe I'm too obfuscated, but I didn't found anything.
Then why not post the debug output here? Honestly, you're putting a huge amount of time into *not* fixing the problem. Alan DeKok.
El 27/04/15 a las 14:02, Alan DeKok escribió:
On Apr 27, 2015, at 2:08 AM, Angel L. Mateo <amateo@um.es> wrote:
El 24/04/15 a las 13:48, Alan DeKok escribió:
Well, read the debug output to see what's going on.
I have read more than once. The problem is that I can't find any output indicating why it is not searching for ldap-group. Maybe I'm too obfuscated, but I didn't found anything.
Then why not post the debug output here?
The message I sent on 4/24 had an attachment. I have just realized that the list distributed it without it (I don't know why, but I have checked it in my sent messages). Here it is again -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 28, 2015, at 2:25 AM, Angel L. Mateo <amateo@um.es> wrote:
The message I sent on 4/24 had an attachment. I have just realized that the list distributed it without it (I don't know why, but I have checked it in my sent messages).
Here it is again
As a zip file. <sigh> You do know that the list accepts text, right? Why are you making it as difficult as possible for people to help you? The debug log seems clear: (0) files_adminslogin: users: Matched entry DEFAULT at line 8 (0) [files_adminslogin] = ok So... what's on line 8? Is the entry with LDAP-Group before or after line 8 of that file? And why have you renamed many of the modules? Perhaps you could have said this before. The advice I give here assumes that (a) you've described what you're doing, and (b) failing that, you're using the default configuration. Neither assumption seems to be true. Since you've renamed the LDAP module, you have to use a different name for the LDAP-Group attribute. One that refers to the name you've given it. In this case, "ldap-uid-LDAP-Group". And you likely won't be able to use "Auth-Type := LDAP", either. Or, you could just use NORMAL names for the modules. There is really no reason to rename them. This should be a lesson that you MUST (a) describe what you're doing, and (b) generally stay with the default configuration. Alan DeKok.
El 28/04/15 a las 12:48, Alan DeKok escribió:
On Apr 28, 2015, at 2:25 AM, Angel L. Mateo <amateo@um.es> wrote:
The message I sent on 4/24 had an attachment. I have just realized that the list distributed it without it (I don't know why, but I have checked it in my sent messages).
Here it is again
As a zip file. <sigh> You do know that the list accepts text, right? Why are you making it as difficult as possible for people to help you?
I sent it as a zip file because I previously sent directly as text, but list manager (or some MTA in the way) removed the attach. I have attached a screenshot of my sent messages so you could check that the message I sent on 4/24 had an attach.
The debug log seems clear:
(0) files_adminslogin: users: Matched entry DEFAULT at line 8 (0) [files_adminslogin] = ok
So... what's on line 8? Is the entry with LDAP-Group before or after line 8 of that file?
The entry with ldap-group is before line 8.
And why have you renamed many of the modules? Perhaps you could have said this before.
I renamed them because I have more than one ldap module with different configurations. And if I could imagine that the name of the module is so important, I'd have said it before.
The advice I give here assumes that (a) you've described what you're doing, and (b) failing that, you're using the default configuration.
Neither assumption seems to be true.
Since you've renamed the LDAP module, you have to use a different name for the LDAP-Group attribute. One that refers to the name you've given it. In this case, "ldap-uid-LDAP-Group". And you likely won't be able to use "Auth-Type := LDAP", either.
Ok. I'll try this.
Or, you could just use NORMAL names for the modules. There is really no reason to rename them.
Really? Could I use more than one ldap module without renaming at least one of them?
This should be a lesson that you MUST (a) describe what you're doing, and (b) generally stay with the default configuration.
(a) I really think I have describe what I'm doing. The only thing I didn't said in my messages is that I have named the modules. (b) And if name is so important you should document it in the docs, shouldn't you? -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
On Apr 29, 2015, at 2:17 AM, Angel L. Mateo <amateo@um.es> wrote:
I renamed them because I have more than one ldap module with different configurations. And if I could imagine that the name of the module is so important, I'd have said it before.
Since you can't fix it yourself, you're clearly missing something... and therefore should be describing what you've done, and leave nothing out.
Or, you could just use NORMAL names for the modules. There is really no reason to rename them.
Really? Could I use more than one ldap module without renaming at least one of them?
Don't be rude. Until this message, you never said you had multiple LDAP modules. The debug log you posted shows only one LDAP module. My responses are based on the information you give. If that information is wrong or incomplete, my suggestions won't be useful, because they're based on the wrong information.
(a) I really think I have describe what I'm doing. The only thing I didn't said in my messages is that I have named the modules.
You left out key information which was CRITICAL for solving the problem. Yes, CRITICAL. And now you're upset because I don't like it when people waste my time.
(b) And if name is so important you should document it in the docs, shouldn't you?
http://wiki.freeradius.org/modules/Rlm_ldap See "Group support" It's already documented. The only reason you didn't see that is because you didn't read the existing documentation. Alan DeKok.
El 29/04/15 a las 15:05, Alan DeKok escribió:
On Apr 29, 2015, at 2:17 AM, Angel L. Mateo <amateo@um.es> wrote:
I renamed them because I have more than one ldap module with different configurations. And if I could imagine that the name of the module is so important, I'd have said it before.
Since you can't fix it yourself, you're clearly missing something... and therefore should be describing what you've done, and leave nothing out.
Or, you could just use NORMAL names for the modules. There is really no reason to rename them.
Really? Could I use more than one ldap module without renaming at least one of them?
Don't be rude.
Until this message, you never said you had multiple LDAP modules. The debug log you posted shows only one LDAP module.
The debug log I posted shows two ldap modules (ldap-uid and ldap-email).
My responses are based on the information you give. If that information is wrong or incomplete, my suggestions won't be useful, because they're based on the wrong information.
(a) I really think I have describe what I'm doing. The only thing I didn't said in my messages is that I have named the modules.
You left out key information which was CRITICAL for solving the problem.
Yes, CRITICAL. And now you're upset because I don't like it when people waste my time.
(b) And if name is so important you should document it in the docs, shouldn't you?
http://wiki.freeradius.org/modules/Rlm_ldap
See "Group support"
It's already documented. The only reason you didn't see that is because you didn't read the existing documentation.
I'm sorry about this but I didn't read documentation (of this module) at web, but the one distributed with the software. The file ldap_howto.rst.gz distributed didn't cover this -- Angel L. Mateo Martínez Sección de Telemática Área de Tecnologías de la Información y las Comunicaciones Aplicadas (ATICA) http://www.um.es/atica Tfo: 868887590 Fax: 868888337
I have 3.0.7 running and also get the dynamic expansion..." WARNING and my users file is empty but FR correctly checks for group membership of the user trying to authenticate. I checked that by reading the debug output (freeradius -XXX). 2015-04-23 14:29 GMT+02:00 Alan DeKok <aland@deployingradius.com>:
On Apr 23, 2015, at 3:23 AM, Angel L. Mateo <amateo@um.es> wrote:
Now I don't have the "dynamic expansion..." error, but ldap module is still not searching for groups.
The ldap module does group checks in certain circumstances... such as when you use LDAP-Group. It does that in all of my tests. If it's not working for you, it's probably because you're not actually using LDAP-Group.
In my ldap I have my users and groups with a posix schema. Primary group of the user are in the gidNumber attribute of the user. This group has a posixGroup entry in the ldap. In this entry there are memberUid attributes for the users belonging to the group (but this is not its primary group).
That's all good.
So, in my ldap module configuration I have:
...
and in the site configuration:
I think I send a message to this list EVERY DAY saying "post the debug output. don't post the config".
What, exactly, does it take for the message to get through?
Then, in my users file I have something like:
Again, that's nice, but probably not enough.
DEFAULT Realm == um.es, Ldap-Group == 1001, Auth-Type := Reject Reply-Message = "..." Fall-Through = No
DEFAULT Realm == um.es Fall-Through = No
but, radius never make any search to match the group of the users.
Any idea?
READ THE DEBUG OUTPUT.
I'll bet money that there's ANOTHER "users" file entry which is being matched, AND you don't have a Fall-Through for the first one. So the DEFAULT you posted above never gets matched.
The process here isn't difficult. READ THE DEBUG OUTPUT. Check that the server is using the modules you expect it to use. Check that the server is using the configuration you expect it to use. Check that the server is matching "users" file entries you expect it to match.
This is computing 101. It's not magic. It's not random chance. It's brain-dead, dumb, literal, exact, and consistent. The main reason you haven't solved this already is that you haven't checked to see if the server is doing what you think it's doing. You're looking at the inputs, and wondering why the outputs are wrong. You SHOULD be looking at the process which turns the inputs into the outputs: the debug log.
It's like trying to figure out why your TV won't work, but you refuse to ever look at the screen. And on the screen, there's a big message saying "FIRMWARE UPDATE REQUIRED". You won't ever discover that message by looking at the inputs.
Alan DeKok.
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
Le 22/04/2015 14:15, Angel L. Mateo a écrit :
Is it any estimation on when it will be released?
<private_joke> We already know Arran's answer. So. Here is the rabbit. / \ / _ \ | / \ | || || _______ || || |\ \ || || ||\ \ || || || \ | || || || \__/ || || || || \\_/ \_/ \_// / _ _ \ / \ | O O | | \ ___ / | / \ \_/ / \ / ----- | --\ \ | \__/|\__/ \ | \ |_|_| / \_____ _____/ \ / | | </private_joke> ;-) -- lrs This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.
On 22 Apr 2015, at 13:43, RESTOUX, Loïc <loic.restoux@capgemini.com> wrote:
Le 22/04/2015 14:15, Angel L. Mateo a écrit :
Is it any estimation on when it will be released?
<private_joke> We already know Arran's answer. So. Here is the rabbit.
/ \ / _ \ | / \ | || || _______ || || |\ \ || || ||\ \ || || || \ | || || || \__/ || || || || \\_/ \_/ \_// / _ _ \ / \ | O O | | \ ___ / | / \ \_/ / \ / ----- | --\ \ | \__/|\__/ \ | \ |_|_| / \_____ _____/ \ / | |
</private_joke> ;-)
Where's the pancake? Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS development team FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
Le 22/04/2015 14:15, Angel L. Mateo a écrit :
Is it any estimation on when it will be released?
<private_joke> We already know Arran's answer.
Just be glad they picked FreeRADIUS as a name, and not something like "FreeGameOfThrones". Because then, the answer would always be "when it's done". And we would have to wait 10 years for a release. (And all our radiusd would die horribly.) </geek_joke> This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.
participants (6)
-
"RESTOUX, Loïc" -
Alan DeKok -
Angel L. Mateo -
Arran Cudbard-Bell -
Ben Humpert -
Chaigneau, Nicolas