Gavin Henry wrote:
Did you read the man page? man slapo-translucent
I did, but the significance of translucent_local and _remote didn't strike me. Unfortunately it seems that enabling local+remote searching doesn't change the result. I must have a silly bug in my configuration, but I cannot figure out where.
Various combinations of translucent_local and _remote give different, but consistent, results:
neither local nor remote: only remote entries returned local only: no entries returned remote only: only remote entries returned local and remote: only remote entries returned
I use the following in my slapd.conf[1]:
translucent_remote uid translucent_local uid
The databases on each host seem fine. The main ldap directory contains an ou with a single uid[2]; the branch extension directory contains one attribute modification and one local-only entry[3].
I ran a full debug with 'translucent_local uid' in the configuration file: slapd -g openldap -u openldap -f /etc/ldap/slapd.conf -d 65535
The search command I use: ldapsearch -x -W -D 'cn=branchadmin,dc=branch,dc=example,dc=com' \ -H ldap://localhost -b 'dc=example,dc=com' -LLL 'uid=*' uid
The output[5] seems to show (on lines 523 and 615, for example), that uid=barney is found, but I'm not able to determine why it is not returned to the client. I also dumped the network packets to verify that uid=barney was not retured. It wasn't.
sven
[1] Entire /etc/ldap/slapd.conf include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/autofs.schema
pidfile /var/run/slapd/slapd.pid argsfile /var/run/slapd/slapd.args loglevel none
modulepath /usr/lib/ldap moduleload back_bdb moduleload back_ldap moduleload translucent
sizelimit 500 tool-threads 1
backend bdb backend ldap
database bdb directory /var/lib/ldap/translucent4 suffix "dc=example,dc=com" rootdn "cn=branchadmin,dc=branch,dc=example,dc=com" rootpw "admin" index objectclass eq index uid eq,sub lastmod off
overlay translucent translucent_remote uid translucent_local uid uri "ldap://172.27.27.37" idassert-bind bindmethod=simple binddn="cn=mainadmin,dc=example,dc=com" credentials="admin" mode=none #end
[2] slapcat on main ldap: dn: dc=example,dc=com objectClass: top objectClass: dcObject objectClass: organization dc: example o: Simple example structuralObjectClass: organization
dn: cn=mainadmin,dc=example,dc=com objectClass: simpleSecurityObject objectClass: organizationalRole cn: mainadmin description: LDAP administrator userPassword:: e2NyeXB0fTRUT2NoeFV0M3AyUEU= structuralObjectClass: organizationalRole
dn: ou=People,dc=example,dc=com ou: People objectClass: organizationalUnit structuralObjectClass: organizationalUnit
dn: uid=andrew,ou=People,dc=example,dc=com uid: andrew cn: Andrew sn: Andrewson uidNumber: 401 gidNumber: 501 homeDirectory: /home/andrew structuralObjectClass: person objectClass: person objectClass: posixAccount #end
[3] slapcat on local branch, after a) one modification of existing 'description' field for uid=andrew, and b) one new local-only entry for uid=barney. dn: dc=example,dc=com structuralObjectClass: glue objectClass: top objectClass: glue
dn: ou=people,dc=example,dc=com structuralObjectClass: glue objectClass: top objectClass: glue
dn: uid=andrew,ou=People,dc=example,dc=com description: changed on branch only
dn: uid=barney,ou=People,dc=example,dc=com uid: barney cn: Barney sn: Barneyson uidNumber: 402 gidNumber: 502 homeDirectory: /home/barney objectClass: person objectClass: posixAccount description: only exists on branch #end
[4] slapd debug output. 1 @(#) $OpenLDAP: slapd 2.4.10 (Jul 17 2008 14:44:35) $ 2 buildd@ninsei:/build/buildd/openldap-2.4.10/debian/build/servers/slapd 3 ldap_pvt_gethostbyname_a: host=debian, r=0 4 daemon_init: <null> 5 daemon_init: listen on ldap:/// 6 daemon_init: 1 listeners to open... 7 ldap_url_parse_ext(ldap:///) 8 daemon: listener initialized ldap:/// 9 daemon_init: 2 listeners opened 10 ldap_create 11 slapd init: initiated server. 12 slap_sasl_init: initialized! 13 reading config file /etc/ldap/slapd.conf 14 line 1 (include /etc/ldap/schema/core.schema) 15 reading config file /etc/ldap/schema/core.schema [several lines of schema debugging removed] 208 line 7 (pidfile /var/run/slapd/slapd.pid) 209 line 8 (argsfile /var/run/slapd/slapd.args) 210 line 9 (loglevel none) 211 line 11 (modulepath /usr/lib/ldap) 212 line 12 (moduleload back_bdb) 213 loaded module back_bdb 214 bdb_back_initialize: initialize BDB backend 215 bdb_back_initialize: Sleepycat Software: Berkeley DB 4.2.52: (December 3, 2003) 216 module back_bdb: null module registered 217 line 13 (moduleload back_ldap) 218 loaded module back_ldap 219 module back_ldap: null module registered 220 line 14 (moduleload translucent) 221 loaded module translucent 222 ==> translucent_initialize 223 module translucent: null module registered 224 line 16 (sizelimit 500) 225 line 17 (tool-threads 1) 226 line 19 (backend bdb) 227 line 20 (backend ldap) 228 line 22 (database bdb) 229 bdb_db_init: Initializing BDB database 230 line 23 (directory /var/lib/ldap/translucent4) 231 line 24 (suffix "dc=example,dc=com") 232 >>> dnPrettyNormal: <dc=example,dc=com> 233 => ldap_bv2dn(dc=example,dc=com,0) 234 <= ldap_bv2dn(dc=example,dc=com)=0 235 => ldap_dn2bv(272) 236 <= ldap_dn2bv(dc=example,dc=com)=0 237 => ldap_dn2bv(272) 238 <= ldap_dn2bv(dc=example,dc=com)=0 239 <<< dnPrettyNormal: <dc=example,dc=com>, <dc=example,dc=com> 240 line 25 (rootdn "cn=branchadmin,dc=branch,dc=example,dc=com") 241 >>> dnPrettyNormal: <cn=branchadmin,dc=branch,dc=example,dc=com> 242 => ldap_bv2dn(cn=branchadmin,dc=branch,dc=example,dc=com,0) 243 <= ldap_bv2dn(cn=branchadmin,dc=branch,dc=example,dc=com)=0 244 => ldap_dn2bv(272) 245 <= ldap_dn2bv(cn=branchadmin,dc=branch,dc=example,dc=com)=0 246 => ldap_dn2bv(272) 247 <= ldap_dn2bv(cn=branchadmin,dc=branch,dc=example,dc=com)=0 248 <<< dnPrettyNormal: <cn=branchadmin,dc=branch,dc=example,dc=com>, <cn=branchadmin,dc=branch,dc=example,dc=com> 249 line 26 (rootpw ***) 250 line 27 (index objectclass eq) 251 index objectClass 0x0004 252 line 28 (index uid eq,sub) 253 index uid 0x0714 254 line 29 (lastmod off) 255 line 31 (overlay translucent) 256 ==> translucent_db_init 257 line 32 (translucent_local uid) 258 line 33 (uri "ldap://172.27.27.37") 259 ==> translucent_db_config: uri 260 ldap_url_parse_ext(ldap://172.27.27.37) 261 line 38 (idassert-bind ***) 262 ==> translucent_db_config: idassert-bind 263 >>> dnNormalize: <cn=mainadmin,dc=example,dc=com> 264 => ldap_bv2dn(cn=mainadmin,dc=example,dc=com,0) 265 <= ldap_bv2dn(cn=mainadmin,dc=example,dc=com)=0 266 => ldap_dn2bv(272) 267 <= ldap_dn2bv(cn=mainadmin,dc=example,dc=com)=0 268 <<< dnNormalize: <cn=mainadmin,dc=example,dc=com> 269 >>> dnNormalize: <cn=Subschema> 270 => ldap_bv2dn(cn=Subschema,0) 271 <= ldap_bv2dn(cn=Subschema)=0 272 => ldap_dn2bv(272) 273 <= ldap_dn2bv(cn=subschema)=0 274 <<< dnNormalize: <cn=subschema> 275 matching_rule_use_init [schema lines omitted] 302 slapd startup: initiated. 303 backend_startup_one: starting "cn=config" 304 config_back_db_open 305 config_build_entry: "cn=config" 306 config_build_entry: "cn=module{0}" 307 config_build_entry: "cn=schema" 308 config_build_entry: "cn={0}core" 309 config_build_entry: "cn={1}cosine" 310 config_build_entry: "cn={2}nis" 311 config_build_entry: "cn={3}inetorgperson" 312 config_build_entry: "cn={4}autofs" 313 config_build_entry: "olcDatabase={-1}frontend" 314 config_build_entry: "olcDatabase={0}config" 315 config_build_entry: "olcDatabase={1}bdb" 316 config_build_entry: "olcOverlay={0}translucent" 317 ==> translucent_cfadd 318 config_build_entry: "olcDatabase=ldap" 319 backend_startup_one: starting "dc=example,dc=com" 320 bdb_db_open: "dc=example,dc=com" 321 bdb_db_open: database "dc=example,dc=com": dbenv_open(/var/lib/ldap/translucent4). 322 ==> translucent_db_open 323 backend_startup_one: starting "dc=example,dc=com" 324 ldap_back_db_open: URI=ldap://172.27.27.37 325 slapd starting 326 daemon: added 4r listener=(nil) 327 daemon: added 7r listener=0x82f6068 328 daemon: added 8r listener=0x82f6130 329 daemon: epoll: listen=7 active_threads=0 tvp=NULL 330 daemon: epoll: listen=8 active_threads=0 tvp=NULL 331 daemon: activity on 1 descriptor 332 daemon: activity on: 333 daemon: epoll: listen=7 active_threads=0 tvp=NULL 334 daemon: epoll: listen=8 active_threads=0 tvp=NULL 335 daemon: activity on 1 descriptor 336 daemon: activity on: 337 slap_listener_activate(8): 338 >>> slap_listener(ldap:///) 339 daemon: listen=8, new connection on 13 340 daemon: added 13r (active) listener=(nil) 341 conn=0 fd=13 ACCEPT from IP=127.0.0.1:51638 (IP=0.0.0.0:389) 342 daemon: epoll: listen=7 active_threads=0 tvp=NULL 343 daemon: epoll: listen=8 active_threads=0 tvp=NULL 344 daemon: activity on 1 descriptor 345 daemon: activity on: 346 daemon: epoll: listen=7 active_threads=0 tvp=NULL 347 daemon: epoll: listen=8 active_threads=0 tvp=NULL 348 daemon: activity on 1 descriptor 349 daemon: activity on: 13r 350 daemon: read active on 13 351 daemon: epoll: listen=7 active_threads=0 tvp=NULL 352 daemon: epoll: listen=8 active_threads=0 tvp=NULL 353 connection_get(13) 354 connection_get(13): got connid=0 355 connection_read(13): checking for input on id=0 356 ber_get_next 357 ldap_read: want=8, got=8 358 0000: 30 3b 02 01 01 60 36 02 0;...`6. 359 ldap_read: want=53, got=53 360 0000: 01 03 04 2a 63 6e 3d 62 72 61 6e 63 68 61 64 6d ...*cn=branchadm 361 0010: 69 6e 2c 64 63 3d 62 72 61 6e 63 68 2c 64 63 3d in,dc=branch,dc= 362 0020: 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f 6d 80 05 example,dc=com.. 363 0030: 61 64 6d 69 6e admin 364 ber_get_next: tag 0x30 len 59 contents: 365 ber_dump: buf=0x83a9dd8 ptr=0x83a9dd8 end=0x83a9e13 len=59 366 0000: 02 01 01 60 36 02 01 03 04 2a 63 6e 3d 62 72 61 ...`6....*cn=bra 367 0010: 6e 63 68 61 64 6d 69 6e 2c 64 63 3d 62 72 61 6e nchadmin,dc=bran 368 0020: 63 68 2c 64 63 3d 65 78 61 6d 70 6c 65 2c 64 63 ch,dc=example,dc 369 0030: 3d 63 6f 6d 80 05 61 64 6d 69 6e =com..admin 370 ber_get_next 371 ldap_read: want=8 error=Resource temporarily unavailable 372 conn=0 op=0 do_bind 373 ber_scanf fmt ({imt) ber: 374 ber_dump: buf=0x83a9dd8 ptr=0x83a9ddb end=0x83a9e13 len=56 375 0000: 60 36 02 01 03 04 2a 63 6e 3d 62 72 61 6e 63 68 `6....*cn=branch 376 0010: 61 64 6d 69 6e 2c 64 63 3d 62 72 61 6e 63 68 2c admin,dc=branch, 377 0020: 64 63 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f dc=example,dc=co 378 0030: 6d 80 05 61 64 6d 69 6e m..admin 379 ber_scanf fmt (m}) ber: 380 ber_dump: buf=0x83a9dd8 ptr=0x83a9e0c end=0x83a9e13 len=7 381 0000: 00 05 61 64 6d 69 6e ..admin 382 >>> dnPrettyNormal: <cn=branchadmin,dc=branch,dc=example,dc=com> 383 => ldap_bv2dn(cn=branchadmin,dc=branch,dc=example,dc=com,0) 384 <= ldap_bv2dn(cn=branchadmin,dc=branch,dc=example,dc=com)=0 385 => ldap_dn2bv(272) 386 <= ldap_dn2bv(cn=branchadmin,dc=branch,dc=example,dc=com)=0 387 => ldap_dn2bv(272) 388 <= ldap_dn2bv(cn=branchadmin,dc=branch,dc=example,dc=com)=0 389 <<< dnPrettyNormal: <cn=branchadmin,dc=branch,dc=example,dc=com>, <cn=branchadmin,dc=branch,dc=example,dc=com> 390 conn=0 op=0 BIND dn="cn=branchadmin,dc=branch,dc=example,dc=com" method=128 391 do_bind: version=3 dn="cn=branchadmin,dc=branch,dc=example,dc=com" method=128 392 translucent_bind: <cn=branchadmin,dc=branch,dc=example,dc=com> method 128 393 conn=0 op=0: rootdn="cn=branchadmin,dc=branch,dc=example,dc=com" bind succeeded 394 conn=0 op=0 BIND dn="cn=branchadmin,dc=branch,dc=example,dc=com" mech=SIMPLE ssf=0 395 do_bind: v3 bind: "cn=branchadmin,dc=branch,dc=example,dc=com" to "cn=branchadmin,dc=branch,dc=example,dc=com" 396 send_ldap_result: conn=0 op=0 p=3 397 send_ldap_result: err=0 matched="" text="" 398 send_ldap_response: msgid=1 tag=97 err=0 399 ber_flush2: 14 bytes to sd 13 400 0000: 30 0c 02 01 01 61 07 0a 01 00 04 00 04 00 0....a........ 401 ldap_write: want=14, written=14 402 0000: 30 0c 02 01 01 61 07 0a 01 00 04 00 04 00 0....a........ 403 conn=0 op=0 RESULT tag=97 err=0 text= 404 daemon: activity on 1 descriptor 405 daemon: activity on: 406 daemon: epoll: listen=7 active_threads=0 tvp=NULL 407 daemon: epoll: listen=8 active_threads=0 tvp=NULL 408 daemon: activity on 1 descriptor 409 daemon: activity on: 13r 410 daemon: read active on 13 411 daemon: epoll: listen=7 active_threads=0 tvp=NULL 412 daemon: epoll: listen=8 active_threads=0 tvp=NULL 413 connection_get(13) 414 connection_get(13): got connid=0 415 connection_read(13): checking for input on id=0 416 ber_get_next 417 ldap_read: want=8, got=8 418 0000: 30 33 02 01 02 63 2e 04 03...c.. 419 ldap_read: want=45, got=45 420 0000: 11 64 63 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 .dc=example,dc=c 421 0010: 6f 6d 0a 01 02 0a 01 00 02 01 00 02 01 00 01 01 om.............. 422 0020: 00 87 03 75 69 64 30 05 04 03 75 69 64 ...uid0...uid 423 ber_get_next: tag 0x30 len 51 contents: 424 ber_dump: buf=0x83aa218 ptr=0x83aa218 end=0x83aa24b len=51 425 0000: 02 01 02 63 2e 04 11 64 63 3d 65 78 61 6d 70 6c ...c...dc=exampl 426 0010: 65 2c 64 63 3d 63 6f 6d 0a 01 02 0a 01 00 02 01 e,dc=com........ 427 0020: 00 02 01 00 01 01 00 87 03 75 69 64 30 05 04 03 .........uid0... 428 0030: 75 69 64 uid 429 ber_get_next 430 ldap_read: want=8 error=Resource temporarily unavailable 431 conn=0 op=1 do_search 432 ber_scanf fmt ({miiiib) ber: 433 ber_dump: buf=0x83aa218 ptr=0x83aa21b end=0x83aa24b len=48 434 0000: 63 2e 04 11 64 63 3d 65 78 61 6d 70 6c 65 2c 64 c...dc=example,d 435 0010: 63 3d 63 6f 6d 0a 01 02 0a 01 00 02 01 00 02 01 c=com........... 436 0020: 00 01 01 00 87 03 75 69 64 30 05 04 03 75 69 64 ......uid0...uid 437 >>> dnPrettyNormal: <dc=example,dc=com> 438 => ldap_bv2dn(dc=example,dc=com,0) 439 <= ldap_bv2dn(dc=example,dc=com)=0 440 => ldap_dn2bv(272) 441 <= ldap_dn2bv(dc=example,dc=com)=0 442 => ldap_dn2bv(272) 443 <= ldap_dn2bv(dc=example,dc=com)=0 444 <<< dnPrettyNormal: <dc=example,dc=com>, <dc=example,dc=com> 445 SRCH "dc=example,dc=com" 2 0 0 0 0 446 begin get_filter 447 PRESENT 448 ber_scanf fmt (m) ber: 449 ber_dump: buf=0x83aa218 ptr=0x83aa23f end=0x83aa24b len=12 450 0000: 87 03 75 69 64 30 05 04 03 75 69 64 ..uid0...uid 451 end get_filter 0 452 filter: (uid=*) 453 ber_scanf fmt ({M}}) ber: 454 ber_dump: buf=0x83aa218 ptr=0x83aa244 end=0x83aa24b len=7 455 0000: 00 05 04 03 75 69 64 ....uid 456 attrs: uid 457 conn=0 op=1 SRCH base="dc=example,dc=com" scope=2 deref=0 filter="(uid=*)" 458 conn=0 op=1 SRCH attr=uid 459 ==> translucent_search: <dc=example,dc=com> (uid=*) 460 => bdb_search 461 bdb_dn2entry("dc=example,dc=com") 462 => bdb_dn2id("dc=example,dc=com") 463 <= bdb_dn2id: got id=0x1 464 entry_decode: "dc=example,dc=com" 465 <= entry_decode(dc=example,dc=com) 466 => access_allowed: search access to "dc=example,dc=com" "entry" requested 467 <= root access granted 468 => access_allowed: search access granted by manage(=mwrscxd) 469 search_candidates: base="dc=example,dc=com" (0x00000001) scope=2 470 => bdb_dn2idl("dc=example,dc=com") 471 => bdb_filter_candidates 472 AND 473 => bdb_list_candidates 0xa0 474 => bdb_filter_candidates 475 OR 476 => bdb_list_candidates 0xa1 477 => bdb_filter_candidates 478 EQUALITY 479 => bdb_equality_candidates (objectClass) 480 daemon: activity on 1 descriptor 481 daemon: activity on: 482 daemon: epoll: listen=7 active_threads=0 tvp=NULL 483 daemon: epoll: listen=8 active_threads=0 tvp=NULL 484 => key_read 485 bdb_idl_fetch_key: [b49d1940] 486 <= bdb_index_read: failed (-30990) 487 <= bdb_equality_candidates: id=0, first=0, last=0 488 <= bdb_filter_candidates: id=0 first=0 last=0 489 => bdb_filter_candidates 490 PRESENT 491 => bdb_presence_candidates (uid) 492 <= bdb_presence_candidates: (uid) not indexed 493 <= bdb_filter_candidates: id=-1 first=1 last=4 494 <= bdb_list_candidates: id=-1 first=1 last=4 495 <= bdb_filter_candidates: id=-1 first=1 last=4 496 <= bdb_list_candidates: id=-1 first=1 last=4 497 <= bdb_filter_candidates: id=-1 first=1 last=4 498 bdb_search_candidates: id=-1 first=1 last=4 499 entry_decode: "ou=people,dc=example,dc=com" 500 <= entry_decode(ou=people,dc=example,dc=com) 501 => bdb_dn2id("ou=people,dc=example,dc=com") 502 <= bdb_dn2id: got id=0x2 503 entry_decode: "uid=andrew,ou=People,dc=example,dc=com" 504 <= entry_decode(uid=andrew,ou=People,dc=example,dc=com) 505 => bdb_dn2id("uid=andrew,ou=people,dc=example,dc=com") 506 <= bdb_dn2id: got id=0x3 507 is_entry_objectclass("uid=andrew,ou=People,dc=example,dc=com", "2.5.17.0") no objectClass attribute 508 is_entry_objectclass("uid=andrew,ou=People,dc=example,dc=com", "2.16.840.1.113730.3.2.6") no objectClass attribute 509 is_entry_objectclass("uid=andrew,ou=People,dc=example,dc=com", "1.3.6.1.4.1.4203.666.3.4") no objectClass attribute 510 => test_filter 511 PRESENT 512 => access_allowed: search access to "uid=andrew,ou=People,dc=example,dc=com" "uid" requested 513 <= root access granted 514 => access_allowed: search access granted by manage(=mwrscxd) 515 <= test_filter 5 516 bdb_search: 3 does not match filter 517 entry_decode: "uid=barney,ou=People,dc=example,dc=com" 518 <= entry_decode(uid=barney,ou=People,dc=example,dc=com) 519 => bdb_dn2id("uid=barney,ou=people,dc=example,dc=com") 520 <= bdb_dn2id: got id=0x4 521 => test_filter 522 PRESENT 523 => access_allowed: search access to "uid=barney,ou=People,dc=example,dc=com" "uid" requested 524 <= root access granted 525 => access_allowed: search access granted by manage(=mwrscxd) 526 <= test_filter 6 527 ==> translucent_search_cb: uid=barney,ou=People,dc=example,dc=com 528 ldap_create 529 ldap_url_parse_ext(ldap://172.27.27.37) 530 =>ldap_back_getconn: conn=0 op=1: lc=0x83ab8c8 inserted refcnt=1 rc=0 531 ldap_sasl_bind 532 ldap_send_initial_request 533 ldap_new_connection 1 1 0 534 ldap_int_open_connection 535 ldap_connect_to_host: TCP 172.27.27.37:389 536 ldap_new_socket: 16 537 ldap_prepare_socket: 16 538 ldap_connect_to_host: Trying 172.27.27.37:389 539 ldap_pvt_connect: fd: 16 tm: -1 async: 0 540 ldap_open_defconn: successful 541 ldap_send_server_request 542 ber_scanf fmt ({it) ber: 543 ber_dump: buf=0x83b3b90 ptr=0x83b3b90 end=0x83b3bc1 len=49 544 0000: 30 2f 02 01 01 60 2a 02 01 03 04 1e 63 6e 3d 6d 0/...`*.....cn=m 545 0010: 61 69 6e 61 64 6d 69 6e 2c 64 63 3d 65 78 61 6d ainadmin,dc=exam 546 0020: 70 6c 65 2c 64 63 3d 63 6f 6d 80 05 61 64 6d 69 ple,dc=com..admi 547 0030: 6e n 548 ber_scanf fmt ({i) ber: 549 ber_dump: buf=0x83b3b90 ptr=0x83b3b95 end=0x83b3bc1 len=44 550 0000: 60 2a 02 01 03 04 1e 63 6e 3d 6d 61 69 6e 61 64 `*.....cn=mainad 551 0010: 6d 69 6e 2c 64 63 3d 65 78 61 6d 70 6c 65 2c 64 min,dc=example,d 552 0020: 63 3d 63 6f 6d 80 05 61 64 6d 69 6e c=com..admin 553 ber_flush2: 49 bytes to sd 16 554 0000: 30 2f 02 01 01 60 2a 02 01 03 04 1e 63 6e 3d 6d 0/...`*.....cn=m 555 0010: 61 69 6e 61 64 6d 69 6e 2c 64 63 3d 65 78 61 6d ainadmin,dc=exam 556 0020: 70 6c 65 2c 64 63 3d 63 6f 6d 80 05 61 64 6d 69 ple,dc=com..admi 557 0030: 6e n 558 ldap_write: want=49, written=49 559 0000: 30 2f 02 01 01 60 2a 02 01 03 04 1e 63 6e 3d 6d 0/...`*.....cn=m 560 0010: 61 69 6e 61 64 6d 69 6e 2c 64 63 3d 65 78 61 6d ainadmin,dc=exam 561 0020: 70 6c 65 2c 64 63 3d 63 6f 6d 80 05 61 64 6d 69 ple,dc=com..admi 562 0030: 6e n 563 ldap_result ld 0x83ab908 msgid 1 564 wait4msg ld 0x83ab908 msgid 1 (timeout 100000 usec) 565 wait4msg continue ld 0x83ab908 msgid 1 all 1 566 ** ld 0x83ab908 Connections: 567 * host: 172.27.27.37 port: 389 (default) 568 refcnt: 2 status: Connected 569 last used: Wed Jul 30 14:50:54 2008 570 ** ld 0x83ab908 Outstanding Requests: 571 * msgid 1, origid 1, status InProgress 572 outstanding referrals 0, parent count 0 573 ld 0x83ab908 request count 1 (abandoned 0) 574 ** ld 0x83ab908 Response Queue: 575 Empty 576 ld 0x83ab908 response count 0 577 ldap_chkResponseList ld 0x83ab908 msgid 1 all 1 578 ldap_chkResponseList returns ld 0x83ab908 NULL 579 ldap_int_select 580 read1msg: ld 0x83ab908 msgid 1 all 1 581 ber_get_next 582 ldap_read: want=8, got=8 583 0000: 30 0c 02 01 01 61 07 0a 0....a.. 584 ldap_read: want=6, got=6 585 0000: 01 00 04 00 04 00 ...... 586 ber_get_next: tag 0x30 len 12 contents: 587 ber_dump: buf=0x83b4d08 ptr=0x83b4d08 end=0x83b4d14 len=12 588 0000: 02 01 01 61 07 0a 01 00 04 00 04 00 ...a........ 589 read1msg: ld 0x83ab908 msgid 1 message type bind 590 ber_scanf fmt ({eAA) ber: 591 ber_dump: buf=0x83b4d08 ptr=0x83b4d0b end=0x83b4d14 len=9 592 0000: 61 07 0a 01 00 04 00 04 00 a........ 593 read1msg: ld 0x83ab908 0 new referrals 594 read1msg: mark request completed, ld 0x83ab908 msgid 1 595 request done: ld 0x83ab908 msgid 1 596 res_errno: 0, res_error: <>, res_matched: <> 597 ldap_free_request (origid 1, msgid 1) 598 ldap_free_connection 0 1 599 ldap_free_connection: refcnt 1 600 ldap_parse_result 601 ber_scanf fmt ({iAA) ber: 602 ber_dump: buf=0x83b4d08 ptr=0x83b4d0b end=0x83b4d14 len=9 603 0000: 61 07 0a 01 00 04 00 04 00 a........ 604 ber_scanf fmt (}) ber: 605 ber_dump: buf=0x83b4d08 ptr=0x83b4d14 end=0x83b4d14 len=0 606 ldap_msgfree 607 ldap_search_ext 608 put_filter: "(objectclass=*)" 609 put_filter: simple 610 put_simple_filter: "objectclass=*" 611 ldap_build_search_req ATTRS: * 612 ldap_send_initial_request 613 ldap_send_server_request 614 ber_scanf fmt ({it) ber: 615 ber_dump: buf=0x83b3b90 ptr=0x83b3b90 end=0x83b3bdd len=77 616 0000: 30 4b 02 01 02 63 46 04 26 75 69 64 3d 62 61 72 0K...cF.&uid=bar 617 0010: 6e 65 79 2c 6f 75 3d 70 65 6f 70 6c 65 2c 64 63 ney,ou=people,dc 618 0020: 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f 6d 0a =example,dc=com. 619 0030: 01 00 0a 01 00 02 01 00 02 01 00 01 01 00 87 0b ................ 620 0040: 6f 62 6a 65 63 74 63 6c 61 73 73 30 00 objectclass0. 621 ber_scanf fmt ({) ber: 622 ber_dump: buf=0x83b3b90 ptr=0x83b3b95 end=0x83b3bdd len=72 623 0000: 63 46 04 26 75 69 64 3d 62 61 72 6e 65 79 2c 6f cF.&uid=barney,o 624 0010: 75 3d 70 65 6f 70 6c 65 2c 64 63 3d 65 78 61 6d u=people,dc=exam 625 0020: 70 6c 65 2c 64 63 3d 63 6f 6d 0a 01 00 0a 01 00 ple,dc=com...... 626 0030: 02 01 00 02 01 00 01 01 00 87 0b 6f 62 6a 65 63 ...........objec 627 0040: 74 63 6c 61 73 73 30 00 tclass0. 628 ber_flush2: 77 bytes to sd 16 629 0000: 30 4b 02 01 02 63 46 04 26 75 69 64 3d 62 61 72 0K...cF.&uid=bar 630 0010: 6e 65 79 2c 6f 75 3d 70 65 6f 70 6c 65 2c 64 63 ney,ou=people,dc 631 0020: 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f 6d 0a =example,dc=com. 632 0030: 01 00 0a 01 00 02 01 00 02 01 00 01 01 00 87 0b ................ 633 0040: 6f 62 6a 65 63 74 63 6c 61 73 73 30 00 objectclass0. 634 ldap_write: want=77, written=77 635 0000: 30 4b 02 01 02 63 46 04 26 75 69 64 3d 62 61 72 0K...cF.&uid=bar 636 0010: 6e 65 79 2c 6f 75 3d 70 65 6f 70 6c 65 2c 64 63 ney,ou=people,dc 637 0020: 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f 6d 0a =example,dc=com. 638 0030: 01 00 0a 01 00 02 01 00 02 01 00 01 01 00 87 0b ................ 639 0040: 6f 62 6a 65 63 74 63 6c 61 73 73 30 00 objectclass0. 640 ldap_result ld 0x83ab908 msgid 2 641 wait4msg ld 0x83ab908 msgid 2 (infinite timeout) 642 wait4msg continue ld 0x83ab908 msgid 2 all 1 643 ** ld 0x83ab908 Connections: 644 * host: 172.27.27.37 port: 389 (default) 645 refcnt: 2 status: Connected 646 last used: Wed Jul 30 14:50:54 2008 647 ** ld 0x83ab908 Outstanding Requests: 648 * msgid 2, origid 2, status InProgress 649 outstanding referrals 0, parent count 0 650 ld 0x83ab908 request count 1 (abandoned 0) 651 ** ld 0x83ab908 Response Queue: 652 Empty 653 ld 0x83ab908 response count 0 654 ldap_chkResponseList ld 0x83ab908 msgid 2 all 1 655 ldap_chkResponseList returns ld 0x83ab908 NULL 656 ldap_int_select 657 read1msg: ld 0x83ab908 msgid 2 all 1 658 ber_get_next 659 ldap_read: want=8, got=8 660 0000: 30 27 02 01 02 65 22 0a 0'...e". 661 ldap_read: want=33, got=33 662 0000: 01 20 04 1b 6f 75 3d 50 65 6f 70 6c 65 2c 64 63 . ..ou=People,dc 663 0010: 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 6f 6d 04 =example,dc=com. 664 0020: 00 . 665 ber_get_next: tag 0x30 len 39 contents: 666 ber_dump: buf=0x83b4d38 ptr=0x83b4d38 end=0x83b4d5f len=39 667 0000: 02 01 02 65 22 0a 01 20 04 1b 6f 75 3d 50 65 6f ...e".. ..ou=Peo 668 0010: 70 6c 65 2c 64 63 3d 65 78 61 6d 70 6c 65 2c 64 ple,dc=example,d 669 0020: 63 3d 63 6f 6d 04 00 c=com.. 670 read1msg: ld 0x83ab908 msgid 2 message type search-result 671 ber_scanf fmt ({eAA) ber: 672 ber_dump: buf=0x83b4d38 ptr=0x83b4d3b end=0x83b4d5f len=36 673 0000: 65 22 0a 01 20 04 1b 6f 75 3d 50 65 6f 70 6c 65 e".. ..ou=People 674 0010: 2c 64 63 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 ,dc=example,dc=c 675 0020: 6f 6d 04 00 om.. 676 read1msg: ld 0x83ab908 0 new referrals 677 read1msg: mark request completed, ld 0x83ab908 msgid 2 678 request done: ld 0x83ab908 msgid 2 679 res_errno: 32, res_error: <>, res_matched: <ou=People,dc=example,dc=com> 680 ldap_free_request (origid 2, msgid 2) 681 ldap_free_connection 0 1 682 ldap_free_connection: refcnt 1 683 ldap_parse_result 684 ber_scanf fmt ({iAA) ber: 685 ber_dump: buf=0x83b4d38 ptr=0x83b4d3b end=0x83b4d5f len=36 686 0000: 65 22 0a 01 20 04 1b 6f 75 3d 50 65 6f 70 6c 65 e".. ..ou=People 687 0010: 2c 64 63 3d 65 78 61 6d 70 6c 65 2c 64 63 3d 63 ,dc=example,dc=c 688 0020: 6f 6d 04 00 om.. 689 ber_scanf fmt (}) ber: 690 ber_dump: buf=0x83b4d38 ptr=0x83b4d5f end=0x83b4d5f len=0 691 ldap_msgfree 692 send_ldap_result: conn=0 op=1 p=3 693 send_ldap_result: err=0 matched="" text="" 694 send_ldap_response: msgid=2 tag=101 err=0 695 ber_flush2: 14 bytes to sd 13 696 0000: 30 0c 02 01 02 65 07 0a 01 00 04 00 04 00 0....e........ 697 ldap_write: want=14, written=14 698 0000: 30 0c 02 01 02 65 07 0a 01 00 04 00 04 00 0....e........ 699 conn=0 op=1 SEARCH RESULT tag=101 err=0 nentries=0 text= 700 daemon: activity on 1 descriptor 701 daemon: activity on: 13r 702 daemon: read active on 13 703 daemon: epoll: listen=7 active_threads=0 tvp=NULL 704 daemon: epoll: listen=8 active_threads=0 tvp=NULL 705 connection_get(13) 706 connection_get(13): got connid=0 707 connection_read(13): checking for input on id=0 708 ber_get_next 709 ldap_read: want=8, got=7 710 0000: 30 05 02 01 03 42 00 0....B. 711 ber_get_next: tag 0x30 len 5 contents: 712 ber_dump: buf=0x834fca0 ptr=0x834fca0 end=0x834fca5 len=5 713 0000: 02 01 03 42 00 ...B. 714 ber_get_next 715 ldap_read: want=8, got=0 716 ber_get_next on fd 13 failed errno=0 (Success) 717 connection_read(13): input error=-2 id=0, closing. 718 connection_closing: readying conn=0 sd=13 for close 719 daemon: activity on 1 descriptor 720 daemon: activity on: 721 daemon: epoll: listen=7 active_threads=0 tvp=NULL 722 daemon: epoll: listen=8 active_threads=0 tvp=NULL 723 connection_close: deferring conn=0 sd=13 724 conn=0 op=2 do_unbind 725 conn=0 op=2 UNBIND 726 connection_resched: attempting closing conn=0 sd=13 727 connection_close: conn=0 sd=13 728 translucent_connection_destroy 729 =>ldap_back_conn_destroy: fetching conn 0 730 daemon: removing 13 731 conn=0 fd=13 closed #end