Polls: LDAP users can not be selected

Created on 2 Oct 2018  路  16Comments  路  Source: nextcloud/polls

What is going wrong?

LDAP users can not be found in the search box.
This works fine for groups and local users.

Steps to reproduce the behavior:
When entering an LDAP user they are not displayed.

Information about your polls installation

**Polls version?:
0.8.3

**Fresh installation or update from a prior version (from which one)?:
Fresh

**How did you install this version?:
Appstore

Information about your Instance of Nextcloud/ownCloud:

Nextcloud

**Which Version?:
14.0.1.1

Enabled:
  - activity: 2.7.0
  - admin_audit: 1.4.0
  - announcementcenter: 3.3.0
  - bookmarks_fulltextsearch: 0.99.2
  - bruteforcesettings: 1.1.0
  - cloud_federation_api: 0.0.1
  - comments: 1.4.0
  - dav: 1.6.0
  - deck: 0.4.1
  - external: 3.1.0
  - federatedfilesharing: 1.4.0
  - federation: 1.4.0
  - files: 1.9.0
  - files_accesscontrol: 1.4.0
  - files_external: 1.5.0
  - files_fulltextsearch: 0.99.4
  - files_fulltextsearch_tesseract: 0.99.1
  - files_pdfviewer: 1.3.2
  - files_retention: 1.3.0
  - files_sharing: 1.6.2
  - files_texteditor: 2.6.0
  - files_trashbin: 1.4.1
  - files_versions: 1.7.1
  - files_videoplayer: 1.3.0
  - firstrunwizard: 2.3.0
  - fulltextsearch: 0.99.3
  - fulltextsearch_elasticsearch: 0.99.2
  - gallery: 18.1.0
  - groupfolders: 1.3.3
  - impersonate: 1.1.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.2.0
  - nextcloud_announcements: 1.3.0
  - notifications: 2.2.1
  - oauth2: 1.2.1
  - password_policy: 1.4.0
  - polls: 0.8.3
  - provisioning_api: 1.4.0
  - richdocuments: 2.0.13
  - serverinfo: 1.4.0
  - sharebymail: 1.4.0
  - socialsharing_email: 1.0.4
  - spreed: 4.0.0
  - support: 1.0.0
  - survey_client: 1.2.0
  - systemtags: 1.4.0
  - theming: 1.5.0
  - twofactor_backupcodes: 1.3.1
  - updatenotification: 1.4.1
  - user_ldap: 1.4.0
  - workflowengine: 1.4.0
Disabled:
  - accessibility
  - encryption
  - user_external

Nextcloud configuration:

"system": {
    "instanceid": "***REMOVED SENSITIVE VALUE***",
    "passwordsalt": "***REMOVED SENSITIVE VALUE***",
    "secret": "***REMOVED SENSITIVE VALUE***",
    "trusted_domains": [
        "***REMOVED SENSITIVE VALUE***"
    ],
    "datadirectory": "***REMOVED SENSITIVE VALUE***",
    "dbtype": "mysql",
    "version": "14.0.1.1",
    "overwrite.cli.url": "https:***REMOVED SENSITIVE VALUE***",
    "dbname": "***REMOVED SENSITIVE VALUE***",
    "dbhost": "***REMOVED SENSITIVE VALUE***",
    "dbport": "",
    "dbtableprefix": "oc_",
    "dbuser": "***REMOVED SENSITIVE VALUE***",
    "dbpassword": "***REMOVED SENSITIVE VALUE***",
    "installed": true,
    "mail_smtpmode": "smtp",
    "mail_smtpauthtype": "LOGIN",
    "mail_smtpauth": 1,
    "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
    "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
    "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
    "mail_from_address": "***REMOVED SENSITIVE VALUE***",
    "mail_domain": "***REMOVED SENSITIVE VALUE***",
    "mail_smtpport": "587",
    "default_language": "de_DE",
    "force_language": "de_DE",
    "default_locale": "de_DE",
    "force_locale": "de_DE",
    "defaultapp": "files",
    "knowledgebaseenabled": false,
    "allow_user_to_change_display_name": false,
    "session_keepalive": true,
    "auth.bruteforce.protection.enabled": true,
    "overwriteprotocol": "https",
    "htaccess.RewriteBase": "\/",
    "logtimezone": "Europe\/Berlin",
    "memcache.local": "\\OC\\Memcache\\APCu",
    "logdateformat": "d.m.Y H:i:s",
    "share_folder": "\/Zugewiesene-Freigaben",
    "skeletondirectory": "\/var\/www\/standard_ordner",
    "updater.release.channel": "production",
    "ldapIgnoreNamingRules": false,
    "ldapProviderFactory": "OCA\\User_LDAP\\LDAPProviderFactory",
    "mail_send_plaintext_only": false,
    "ldapUserCleanupInterval": 30,
    "maintenance": false
}

}

Server configuration

Operating system:
Ubuntu 18.04.1 LTS (GNU/Linux 4.15.0-36-generic x86_64)

Web server::
Apache/2.4.29

Database::
Maria-DB 10.1.34

PHP version::
7.2.10

```
**Are you using an external user-backend, if yes which one:
LDAP/ActiveDirectory

Client configuration

Device::
Desktop/mobile phone/ tablet/Web

Browser::
All

Operating system::
W7 / W10

bug investigate

Most helpful comment

I am not familiar with ldap, but your configuration says:
| ldapAttributesForUserSearch | uid;mail
Is it possible, you prevent searching the full name? Have you tried to append 'displayName'?

All 16 comments

My users also come from OpenLDAP, everything works great, same NC and Polls version. No logs available?

I have no chance to test it. Maybe 0.9 will solve that.

I know it doesn't help. But I'm experiencing the same error. If I can help by testing or giving more information please ask for.

I've got just this in the log:

Error | polls | Array ( ) | 2018-10-10T22:37:03+0200
-- | -- | -- | --

As described here:

https://docs.nextcloud.com/server/14/admin_manual/configuration_server/logging_configuration.html

change your loglevel to debug then try it again. You can also post you LDAP/AD-Integration-Settings.

Here comes my LDAP-Config:

| Configuration                 |                                                                   |
+-------------------------------+-------------------------------------------------------------------+
| hasMemberOfFilterSupport      | 0                                                                 |
| hasPagedResultSupport         |                                                                   |
| homeFolderNamingRule          |                                                                   |
| lastJpegPhotoLookup           | 0                                                                 |
| ldapAgentName                 | cn=Manager,dc=example,dc=com                                      |
| ldapAgentPassword             | ***                                                               |
| ldapAttributesForGroupSearch  | cn                                                                |
| ldapAttributesForUserSearch   | uid;mail                                                          |
| ldapBackupHost                |                                                                   |
| ldapBackupPort                |                                                                   |
| ldapBase                      | o=domains,dc=example,dc=com                                       |
| ldapBaseGroups                | ou=Group,domainName=example.com,o=domains,dc=example,dc=com       |
| ldapBaseUsers                 | o=domains,dc=example,dc=com                                       |
| ldapCacheTTL                  | 600                                                               |
| ldapConfigurationActive       | 1                                                                 |
| ldapDefaultPPolicyDN          |                                                                   |
| ldapDynamicGroupMemberURL     |                                                                   |
| ldapEmailAttribute            | mail                                                              |
| ldapExperiencedAdmin          | 0                                                                 |
| ldapExpertUUIDGroupAttr       | cn                                                                |
| ldapExpertUUIDUserAttr        | uid                                                               |
| ldapExpertUsernameAttr        |                                                                   |
| ldapGidNumber                 | gidNumber                                                         |
| ldapGroupDisplayName          | cn                                                                |
| ldapGroupFilter               | (|(objectclass=posixGroup))                                       |
| ldapGroupFilterGroups         |                                                                   |
| ldapGroupFilterMode           | 1                                                                 |
| ldapGroupFilterObjectclass    |                                                                   |
| ldapGroupMemberAssocAttr      | memberUid                                                         |
| ldapHost                      | localhost                                                         |
| ldapIgnoreNamingRules         |                                                                   |
| ldapLoginFilter               | (&(|(objectclass=mailUser))(|(uid=%uid)))                         |
| ldapLoginFilterAttributes     | uid                                                               |
| ldapLoginFilterEmail          | 0                                                                 |
| ldapLoginFilterMode           | 0                                                                 |
| ldapLoginFilterUsername       | 0                                                                 |
| ldapNestedGroups              | 0                                                                 |
| ldapOverrideMainServer        |                                                                   |
| ldapPagingSize                | 500                                                               |
| ldapPort                      | 389                                                               |
| ldapQuotaAttribute            |                                                                   |
| ldapQuotaDefault              |                                                                   |
| ldapTLS                       | 0                                                                 |
| ldapUserAvatarRule            | default                                                           |
| ldapUserDisplayName           | cn                                                                |
| ldapUserDisplayName2          |                                                                   |
| ldapUserFilter                | (|(objectclass=mailUser))                                         |
| ldapUserFilterGroups          |                                                                   |
| ldapUserFilterMode            | 1                                                                 |
| ldapUserFilterObjectclass     | inetOrgPerson                                                     |
| ldapUuidGroupAttribute        | auto                                                              |
| ldapUuidUserAttribute         | auto                                                              |
| turnOffCertCheck              | 0                                                                 |
| turnOnPasswordChange          | 0                                                                 |
| useMemberOfToDetectMembership | 1                                                                 |
+-------------------------------+-------------------------------------------------------------------+

Here comes the log with activated debug-mode:

{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups getGroups-Daniel-500-","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups Filter (&(|(objectclass=posixGroup))(cn=Daniel*))","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"initializing paged search for  Filter (&(|(objectclass=posixGroup))(cn=Daniel*)) base Array\n(\n    [0] => ou=Group,domainName=example.com,o=domains,dc=example,dc=com\n)\n attr Array\n(\n    [0] => cn\n    [1] => dn\n)\n limit 500 offset 0","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"Ready for a paged search","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups(Daniel): read 0 at offset  (limit: 500)","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":3,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"polls","method":"POST","url":"\/apps\/polls\/search","message":"Array\n(\n)\n","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getUsers: Options: search Daniel limit  offset  Filter: (&(|(objectclass=mailUser))(cn=*)(|(uid=Daniel*)(mail=Daniel*)))","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"initializing paged search for  Filter (&(|(objectclass=mailUser))(cn=*)(|(uid=Daniel*)(mail=Daniel*))) base Array\n(\n    [0] => o=domains,dc=example,dc=com\n)\n attr Array\n(\n    [0] => entryuuid\n    [1] => nsuniqueid\n    [2] => objectguid\n    [3] => guid\n    [4] => ipauniqueid\n    [5] => dn\n    [6] => uid\n    [7] => samaccountname\n    [8] => memberof\n    [9] => uid\n    [10] => \n    [11] => mail\n    [12] => cn\n    [13] => \n)\n limit 500 offset 0","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"Ready for a paged search","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"NDhVTSneJkjUC07Mye6c","level":0,"time":"2018-10-17T07:29:06+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getUsers: 0 Users found","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups getGroups-Karl-500-","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups Filter (&(|(objectclass=posixGroup))(cn=Karl*))","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"initializing paged search for  Filter (&(|(objectclass=posixGroup))(cn=Karl*)) base Array\n(\n    [0] => ou=Group,domainName=example.com,o=domains,dc=example,dc=com\n)\n attr Array\n(\n    [0] => cn\n    [1] => dn\n)\n limit 500 offset 0","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"Ready for a paged search","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getGroups(Karl): read 0 at offset  (limit: 500)","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":3,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"polls","method":"POST","url":"\/apps\/polls\/search","message":"Array\n(\n)\n","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getUsers: Options: search Karl limit  offset  Filter: (&(|(objectclass=mailUser))(cn=*)(|(uid=Karl*)(mail=Karl*)))","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"initializing paged search for  Filter (&(|(objectclass=mailUser))(cn=*)(|(uid=Karl*)(mail=Karl*))) base Array\n(\n    [0] => o=domains,dc=example,dc=com\n)\n attr Array\n(\n    [0] => entryuuid\n    [1] => nsuniqueid\n    [2] => objectguid\n    [3] => guid\n    [4] => ipauniqueid\n    [5] => dn\n    [6] => uid\n    [7] => samaccountname\n    [8] => memberof\n    [9] => uid\n    [10] => \n    [11] => mail\n    [12] => cn\n    [13] => \n)\n limit 500 offset 0","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"Ready for a paged search","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"PtyNnBUZH2xHU3yJEpEi","level":0,"time":"2018-10-17T07:29:17+00:00","remoteAddr":"*.*.*.*","user":"username","app":"user_ldap","method":"POST","url":"\/apps\/polls\/search","message":"getUsers: 0 Users found","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"vDC1pRnp4cRnKDs0QCdO","level":0,"time":"2018-10-17T07:29:21+00:00","remoteAddr":"*.*.*.*","user":"username","app":"no app in context","method":"GET","url":"\/apps\/polls\/","message":"No cache entry found for \/appdata_ocbx9hospo1r\/theming\/images (storage: local::\/var\/www\/nextcloud\/data\/, internalPath: appdata_ocbx9hospo1r\/theming\/images)","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"vDC1pRnp4cRnKDs0QCdO","level":0,"time":"2018-10-17T07:29:21+00:00","remoteAddr":"*.*.*.*","user":"username","app":"no app in context","method":"GET","url":"\/apps\/polls\/","message":"No cache entry found for \/appdata_ocbx9hospo1r\/theming\/images (storage: local::\/var\/www\/nextcloud\/data\/, internalPath: appdata_ocbx9hospo1r\/theming\/images)","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}
{"reqId":"vDC1pRnp4cRnKDs0QCdO","level":0,"time":"2018-10-17T07:29:21+00:00","remoteAddr":"*.*.*.*","user":"username","app":"no app in context","method":"GET","url":"\/apps\/polls\/","message":"No cache entry found for \/appdata_ocbx9hospo1r\/theming\/images (storage: local::\/var\/www\/nextcloud\/data\/, internalPath: appdata_ocbx9hospo1r\/theming\/images)","userAgent":"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.2.2"}

I've searched for the two names Daniel and Karl. Daniel gave me just a local test-user and not the LDAP-user. Karl gave me no output. There are LDAP-users for both searches (Karl/Karla and some Daniels).

@BurtGummer @dartcafe Can I provide more information to help to solve this issue?

Thanks for your affort, but I have no possibilty to test this. If you mind, you can test with the current prerelease on a NC14 instance with activated ldap. I don't have an ldap setup.

Tested the release candidate.

When I search for usernames, I get the users displayed (with their full name).
nextcloud.log

However, if I search for the full name, I don't get any results.

When I search for usernames, I get the users displayed (with their full name).

Am I right, that the RC finds the LDAP users?

However, if I search for the full name, I don't get any results.

Hmmm. I just use the NC function for searching users by display name. Can you provide an example?

Here comes an example. I've got an user with the full name "Alexander Kallenbach" and the username "a.kallenbach".
If I would search for "Alex ..." polls wouldn't find the user. But if I would search for the username polls would find the user and would display him with the full name.
bildschirmfoto vom 2018-10-30 15-26-18

Are you able to share a file in the files app this way?

Yes I'm able to do so in the files app, calendar and so on. And I'm quite sure that this worked in some previous version of polls as well.

I am not familiar with ldap, but your configuration says:
| ldapAttributesForUserSearch | uid;mail
Is it possible, you prevent searching the full name? Have you tried to append 'displayName'?

You've been absolutely right. I've added cn, sn and givenName and now polls find my users and it doesn't matter for which user I'm searching.

I am not familiar with ldap, but your configuration says:
| ldapAttributesForUserSearch | uid;mail
Is it possible, you prevent searching the full name? Have you tried to append 'displayName'?

Top - very nice. Thx

Puh...

Was this page helpful?
0 / 5 - 0 ratings

Related issues

wompydomp picture wompydomp  路  6Comments

dartcafe picture dartcafe  路  4Comments

Jana702 picture Jana702  路  4Comments

dartcafe picture dartcafe  路  4Comments

dartcafe picture dartcafe  路  3Comments