Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.0.0+

Get Certificate Valid To/From Dates

Demonstrates how to get the certificate "valid from" and "valid to" dates.

Chilkat Lua Downloads

Lua

    -- In the following call to loadlib, change the path (./chilkat.dll) to the relative or absolute directory where the chilkat.dll, chilkat.so, or chilkat.dylib is located.
    chilkat = assert(package.loadlib("./chilkat.dll", "luaopen_chilkat"))()
    print(chilkat._VERSION)

    local success = false

    local cert = chilkat.newCert{}

    success = cert:LoadFromFile("qa_data/certs/testCert.cer")
    if success == false then
        print(cert:LastErrorText())

    end

    --  Get the certificate valid-from date/time
    local ckdt = chilkat.newCkDateTime{}
    ckdt:SetFromRfc822(cert:ValidFromStr())

    --  Get the local timestamp string.
    print("Valid from: ", ckdt:GetAsTimestamp(true))
    --  Valid from: 2017-03-17T19:00:00-05:00

    --  Now get the date/time as another object where we can get the individual numeric date parts.
    local dt = chilkat.newDtObj{}
    ckdt:ToDtObj(true,dt)

    print(dt:Day(), "/", dt:Month(), "/", dt:Year(), "  ", dt:Hour(), ":", dt:Minute())

    --  Get the certificate valid-to date/time
    ckdt:SetFromRfc822(cert:ValidToStr())

    print("Valid to: ", ckdt:GetAsTimestamp(true))
    --  Valid to: 2020-03-18T18:59:59-05:00new DtObj dt;
    ckdt:ToDtObj(true,dt)

    print(dt:Day(), "/", dt:Month(), "/", dt:Year(), "  ", dt:Hour(), ":", dt:Minute())