BOOL MSCAPI_Manager::BuildCertificateChain(HCRYPTPROV provider, OpString &label, OpString &shortname, SSL_ASN1Cert_list &cert) { CERT_PUBLIC_KEY_INFO *pubkey = (CERT_PUBLIC_KEY_INFO *) g_memory_manager->GetTempBuf2k(); DWORD len; label.Empty(); shortname.Empty(); cert.Resize(0); if(!hMYSystemStore) return FALSE; len = g_memory_manager->GetTempBuf2kLen(); if(!CryptExportPublicKeyInfo(provider, /*AT_SIGNATURE*/ AT_KEYEXCHANGE, (X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), pubkey, &len)) { int err0 = GetLastError(); op_memset(&pubkey, 0, sizeof(pubkey)); len = g_memory_manager->GetTempBufLen(); if(!CryptExportPublicKeyInfo(provider, /* AT_KEYEXCHANGE */ AT_SIGNATURE, (X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), pubkey, &len)) { int err = GetLastError(); return FALSE; } } PCCERT_CONTEXT cert_item = NULL; cert_item = CertFindCertificateInStore(hMYSystemStore, (X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), 0, CERT_FIND_PUBLIC_KEY, pubkey, cert_item); if(!cert_item && hUserDSSystemStore) cert_item = CertFindCertificateInStore(hUserDSSystemStore, (X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), 0, CERT_FIND_PUBLIC_KEY, pubkey, cert_item); if(!cert_item) return FALSE; len = CertNameToStr((X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), &cert_item->pCertInfo->Subject, CERT_SIMPLE_NAME_STR, NULL, 0); if(len) { if(shortname.Reserve(len+1) == NULL) return OpStatus::ERR_NO_MEMORY; len = CertNameToStr((X509_ASN_ENCODING | PKCS_7_ASN_ENCODING), &cert_item->pCertInfo->Subject, CERT_SIMPLE_NAME_STR, shortname.DataPtr(), shortname.Capacity()); } cert.Resize(1); if(cert.Error()) return FALSE(); cert[0].Set(cert_item->pbCertEncoded, cert_item->cbCertEncoded); if(cert.Error() || cert[0].GetLength() == 0) return FALSE; return TRUE; }
CBox2D::CBox2D(LPDIRECT3DDEVICE9 device, vector2d pos, vector2d size, vector2d velocity) { HRESULT hr = D3DXCreateLine(device, &m_line); if (FALSE(hr)) return; m_Position = pos; m_Size.x = size.x + deltaBoundingBox.x * 2; m_Size.y = size.y + deltaBoundingBox.y * 2; m_Velocity = velocity; }
CBox2D::CBox2D(LPDIRECT3DDEVICE9 device, RECT rectangle, vector2d velocity) { HRESULT hr = D3DXCreateLine(device, &m_line); if (FALSE(hr)) return; m_Position.x = rectangle.left; m_Position.y = rectangle.top; m_Size.x = rectangle.right - rectangle.left + deltaBoundingBox.x*2; m_Size.y = rectangle.top - rectangle.bottom + deltaBoundingBox.y*2; m_Velocity = velocity; }
/* Process 1OP Integer instructions */ bool eval_1OP_Int(struct lilith* vm, struct Instruction* c) { #ifdef DEBUG char Name[20] = "ILLEGAL_1OP"; #endif switch(c->raw_XOP) { case 0x00000: /* READPC */ { #ifdef DEBUG strncpy(Name, "READPC", 19); #elif TRACE record_trace("READPC"); #endif READPC(vm, c); break; } case 0x00001: /* READSCID */ { #ifdef DEBUG strncpy(Name, "READSCID", 19); #elif TRACE record_trace("READSCID"); #endif READSCID(vm, c); break; } case 0x00002: /* FALSE */ { #ifdef DEBUG strncpy(Name, "FALSE", 19); #elif TRACE record_trace("FALSE"); #endif FALSE(vm, c); break; } case 0x00003: /* TRUE */ { #ifdef DEBUG strncpy(Name, "TRUE", 19); #elif TRACE record_trace("TRUE"); #endif TRUE(vm, c); break; } case 0x01000: /* JSR_COROUTINE */ { #ifdef DEBUG strncpy(Name, "JSR_COROUTINE", 19); #elif TRACE record_trace("JSR_COROUTINE"); #endif JSR_COROUTINE(vm, c); break; } case 0x01001: /* RET */ { #ifdef DEBUG strncpy(Name, "RET", 19); #elif TRACE record_trace("RET"); #endif RET(vm, c); break; } case 0x02000: /* PUSHPC */ { #ifdef DEBUG strncpy(Name, "PUSHPC", 19); #elif TRACE record_trace("PUSHPC"); #endif PUSHPC(vm, c); break; } case 0x02001: /* POPPC */ { #ifdef DEBUG strncpy(Name, "POPPC", 19); #elif TRACE record_trace("POPPC"); #endif POPPC(vm, c); break; } default: { illegal_instruction(vm, c); break; } } #ifdef DEBUG fprintf(stdout, "# %s reg%u\n", Name, c->reg0); #endif return false; }
unsigned int false_uint(void) { return FALSE(); }