GBase XDM C API 代码示例

#include <ldap.h>
main()
{
LDAP *ld;
LDAPMessage *res, *e;
int i;
char *a, *dn;
void *ptr;
char *vals;
/
打开一个连接 /
if ( (ld = ldap_init( “dotted.host.name”, LDAP_PORT ))
== NULL ){
exit( 1 );
}
/
设置分片集群标识,1 为访问分片集群 /
if (0 != ldap_set_sharding_flag(ld, 1 )) {
exit( 1 );
}
/
在每一个添删改查操作前,首先设置目标分片信息,包括库类
型,被访问的 RDN 值 /
if (0 != ldap_set_sharding_value(ld, “CT”,
“0001484E011001010000000000000002” )) {
exit( 1 );
}
/
在 dc=CT 库内,搜索 sn 属性值是
"0001484E011001010000000000000002"的记录,返回所有属性 /
if ( ldap_search_s( ld, “dc=CT”,
LDAP_SCOPE_SUBTREE,
“(sn=0001484E011001010000000000000002)”, NULL, 0, &res )
!= LDAP_SUCCESS ) {
ldap_perror( ld, “ldap_search_s” );
exit( 1 );
}
/
遍历返回的每个记录 /
for ( e = ldap_first_entry( ld, res ); e != NULL;
e = ldap_next_entry( ld, e ) ) {
/
显示 DN /
dn = ldap_get_dn( ld, e );
printf( "dn: %s0, dn );
free( dn );
/
显示每个属性 /
for ( a = ldap_first_attribute( ld, e, &ptr );
a != NULL;
a = ldap_next_attribute( ld, e, ptr ) ) {
printf( "attribute: %s0, a );
/
显示每个值 /
vals = ldap_get_values( ld, e, a );
for ( i = 0; vals[i] != NULL; i++ ) {
printf( "value: %s0, vals[i] );
}
ldap_value_free( vals );
}
}
/
释放搜索结果 /
ldap_msgfree( res );
/
关闭连接并释放资源 */
ldap_unbind( ld );
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值