David_Stout
Oct 31, 2012Nimbostratus
TCL error - Can't read variable
I am trying to re-write some iRules for CMP by removing the global variables however I'd like to know why I am getting this error. I'm not a complete TCL expert so some assistance is appreciated.
Oct 31 10:42:27 local/tmm err tmm[4996]: 01220001:3: TCL error: devdrmssi.dr.com - can't read "org": no such variable while executing "if { ([matchclass $subject_dn contains devdrmssi_trusted_certs]) and ($subject_dn contains $org) } { log "Http Request for devdrmssi accepted from..."
This is the iRule
when RULE_INIT {
set org "O=companyname"
set subject_dn ""
log "devdrmssi.dr.com irule initialized"
}
when CLIENTSSL_CLIENTCERT {
if { [SSL::cert count] != 0 }{
set subject_dn [X509::subject [SSL::cert 0]]
if { $subject_dn != "" }{
log "Client Certificate Received: $subject_dn"
}
}
}
when HTTP_REQUEST {
if { ([matchclass $subject_dn contains devdrmssi_trusted_certs]) and ($subject_dn contains $org) } {
log "Http Request for devdrmssi accepted from Client Certificate $subject_dn"
pool devdrmssi.dr.com
} else {
reject
}
}