VirtualBox

vbox的更動 59665 路徑 trunk/src/VBox/Runtime


忽略:
時間撮記:
2016-2-14 下午11:57:30 (9 年 以前)
作者:
vboxsync
訊息:

iprt/asn1: Fixed bug represnation of explicit tags that caused trouble doing encoding by piggypacking on the enumeration method. Added simple X.509 testcase.

位置:
trunk/src/VBox/Runtime
檔案:
新增 14 筆資料
修改 4 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Runtime/common/asn1/asn1-basics.cpp

    r57926 r59665  
    576576 */
    577577
    578 RTDECL(int) RTAsn1ContextTagN_Init(PRTASN1CONTEXTTAG pThis, uint32_t uTag)
     578RTDECL(int) RTAsn1ContextTagN_Init(PRTASN1CONTEXTTAG pThis, uint32_t uTag, PCRTASN1COREVTABLE pVtable)
    579579{
    580580    return RTAsn1Core_InitEx(&pThis->Asn1Core,
    581581                             uTag,
    582582                             ASN1_TAGCLASS_CONTEXT | ASN1_TAGFLAG_CONSTRUCTED,
    583                              NULL,
     583                             pVtable,
    584584                             RTASN1CORE_F_PRESENT);
    585585}
  • trunk/src/VBox/Runtime/common/asn1/asn1-cursor.cpp

    r57358 r59665  
    415415
    416416RTDECL(int) RTAsn1CursorGetContextTagNCursor(PRTASN1CURSOR pCursor, uint32_t fFlags, uint32_t uExpectedTag,
    417                                              PRTASN1CONTEXTTAG pCtxTag, PRTASN1CURSOR pCtxTagCursor, const char *pszErrorTag)
    418 {
    419     return rtAsn1CursorGetXxxxCursor(pCursor, fFlags, uExpectedTag, ASN1_TAGCLASS_CONTEXT | ASN1_TAGFLAG_CONSTRUCTED,
    420                                      &pCtxTag->Asn1Core, pCtxTagCursor, pszErrorTag, "ctx tag");
     417                                             PCRTASN1COREVTABLE pVtable, PRTASN1CONTEXTTAG pCtxTag, PRTASN1CURSOR pCtxTagCursor,
     418                                             const char *pszErrorTag)
     419{
     420    int rc = rtAsn1CursorGetXxxxCursor(pCursor, fFlags, uExpectedTag, ASN1_TAGCLASS_CONTEXT | ASN1_TAGFLAG_CONSTRUCTED,
     421                                       &pCtxTag->Asn1Core, pCtxTagCursor, pszErrorTag, "ctx tag");
     422    pCtxTag->Asn1Core.pOps = pVtable;
     423    return rc;
    421424}
    422425
  • trunk/src/VBox/Runtime/common/crypto/x509-file.cpp

    r59625 r59665  
    7070            if (RT_SUCCESS(rc))
    7171            {
    72                 rc = RTCrX509Certificate_Clone(pCertificate, &TmpCert, &g_RTAsn1DefaultAllocator);
     72                rc = RTCrX509Certificate_Clone(pCertificate, &TmpCert, pAllocator);
    7373                if (RT_SUCCESS(rc))
    7474                {
     
    105105            if (RT_SUCCESS(rc))
    106106            {
    107                 rc = RTCrX509Certificate_Clone(pCertificate, &TmpCert, &g_RTAsn1DefaultAllocator);
     107                rc = RTCrX509Certificate_Clone(pCertificate, &TmpCert, pAllocator);
    108108                if (RT_SUCCESS(rc))
    109109                {
  • trunk/src/VBox/Runtime/testcase/Makefile.kmk

    r58282 r59665  
    5353        tstRTCritSect \
    5454        tstRTCritSectRw \
     55        tstRTCrX509-1 \
    5556        tstRTCType \
    5657        tstRTDigest \
     
    257258tstRTCritSectW32_DEFS = TRY_WIN32_CRIT
    258259
     260tstRTCrX509-1_TEMPLATE      = VBOXR3TSTEXE
     261tstRTCrX509-1_SOURCES       = tstRTCrX509-1.cpp
     262tstRTCrX509-1_INCS          = $(tstRTCrX509-1_0_OUTDIR)
     263tstRTCrX509-1_CLEAN         = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
     264tstRTCrX509-1_INTERMEDIATES = $(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h
     265tstRTCrX509-1_VBOX_FILES := \
     266        Pem_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4.pem \
     267        Pem_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5.pem \
     268        Pem_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1.pem \
     269        Pem_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224.pem \
     270        Pem_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256.pem \
     271        Pem_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384.pem \
     272        Pem_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512.pem \
     273       \
     274        CertDer_md4=$(PATH_SUB_CURRENT)/tstRTCrX509-md4-cert.der \
     275        CertDer_md5=$(PATH_SUB_CURRENT)/tstRTCrX509-md5-cert.der \
     276        CertDer_sha1=$(PATH_SUB_CURRENT)/tstRTCrX509-sha1-cert.der \
     277        CertDer_sha224=$(PATH_SUB_CURRENT)/tstRTCrX509-sha224-cert.der \
     278        CertDer_sha256=$(PATH_SUB_CURRENT)/tstRTCrX509-sha256-cert.der \
     279        CertDer_sha384=$(PATH_SUB_CURRENT)/tstRTCrX509-sha384-cert.der \
     280        CertDer_sha512=$(PATH_SUB_CURRENT)/tstRTCrX509-sha512-cert.der \
     281       $(NO_SUCH_VARIABLE)
     282$$(tstRTCrX509-1_0_OUTDIR)/tstRTCrX509-1.h: \
     283                $(foreach file,$(tstRTCrX509-1_VBOX_FILES),$(lastword  $(subst =,$(SP) ,$(file)))) \
     284                $(VBOX_BIN2C) \
     285                | $$(dir $$@)
     286        $(RM) -f -- "$@"
     287        $(foreach file,$(tstRTCrX509-1_VBOX_FILES) \
     288        , $(NLTAB)$(VBOX_BIN2C) -ascii --append \
     289                "$(firstword $(subst =,$(SP) ,$(file)))" \
     290                "$(lastword  $(subst =,$(SP) ,$(file)))" \
     291                "$@")
     292
     293
    259294tstRTCType_TEMPLATE = VBOXR3TSTEXE
    260295tstRTCType_SOURCES = tstRTCType.cpp
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette