Sample code for 30+ languages & platforms
Tcl

Transition from Email.GetSignedByCertChain to Email.LastSignerCert

Provides instructions for replacing deprecated GetSignedByCertChain method calls with LastSignerCert.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

set email [new_CkEmail]

# ...
# ...

# ------------------------------------------------------------------------
# The GetSignedByCertChain method is deprecated:

# certChainObj is a CkCertChain
set certChainObj [CkEmail_GetSignedByCertChain $email]
if {[CkEmail_get_LastMethodSuccess $email] == 0} then {
    puts [CkEmail_lastErrorText $email]
    delete_CkEmail $email
    exit
}

# ...
# ...

delete_CkCertChain $certChainObj

# ------------------------------------------------------------------------
# Do the equivalent using LastSignerCert to get the signing certificate,
# then build the cert chain from the signing certificate object.

set signerCert [new_CkCert]

set success [CkEmail_LastSignerCert $email 0 $signerCert]
if {$success == 0} then {
    puts [CkEmail_lastErrorText $email]
    delete_CkEmail $email
    delete_CkCert $signerCert
    exit
}

# Get the certificate chain from the signer certificate.
set certChain [new_CkCertChain]

set success [CkCert_BuildCertChain $signerCert $certChain]
if {$success == 0} then {
    puts [CkCert_lastErrorText $signerCert]
    delete_CkEmail $email
    delete_CkCert $signerCert
    delete_CkCertChain $certChain
    exit
}


delete_CkEmail $email
delete_CkCert $signerCert
delete_CkCertChain $certChain