X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fstarttls.c;h=5f985d2007ea566671bbe7566d5bcd0407342ac1;hb=886f60f8223d51e6a3b5fe0bf199e335b6eae86e;hp=0e258e9708dd018e10e386aff1e782d249df08c4;hpb=2f3399265caf72d81ba192a86d63a7a96b0c837b;p=openldap diff --git a/servers/slapd/starttls.c b/servers/slapd/starttls.c index 0e258e9708..5f985d2007 100644 --- a/servers/slapd/starttls.c +++ b/servers/slapd/starttls.c @@ -1,6 +1,6 @@ /* $OpenLDAP$ */ /* - * Copyright 1999-2000 The OpenLDAP Foundation. + * Copyright 1999-2002 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms are permitted only @@ -30,7 +30,7 @@ starttls_extop ( struct berval ** rspdata, LDAPControl ***rspctrls, const char ** text, - struct berval *** refs ) + BerVarray * refs ) { void *ctx; int rc; @@ -52,11 +52,12 @@ starttls_extop ( } /* can't start TLS if there are other op's around */ - if (( conn->c_ops != NULL && - (conn->c_ops != op || op->o_next != NULL)) || - ( conn->c_pending_ops != NULL)) + if (( !LDAP_STAILQ_EMPTY(&conn->c_ops) && + (LDAP_STAILQ_FIRST(&conn->c_ops) != op || + LDAP_STAILQ_NEXT(op, o_next) != NULL)) || + ( !LDAP_STAILQ_EMPTY(&conn->c_pending_ops) )) { - *text = "cannot start TLS when operations our outstanding"; + *text = "cannot start TLS when operations are outstanding"; rc = LDAP_OPERATIONS_ERROR; goto done; }