コード例 #1
0
ファイル: DeflateEncoder.cpp プロジェクト: walrus8u/extract
CCoder::CCoder(bool deflate64Mode):
  m_Deflate64Mode(deflate64Mode),
  m_OnePosMatchesMemory(0),
  m_DistanceMemory(0),
  m_Created(false),
  m_Values(0),
  m_Tables(0)
{
  {
    CEncProps props;
    SetProps(&props);
  }
  m_MatchMaxLen = deflate64Mode ? kMatchMaxLen64 : kMatchMaxLen32;
  m_NumLenCombinations = deflate64Mode ? kNumLenSymbols64 : kNumLenSymbols32;
  m_LenStart = deflate64Mode ? kLenStart64 : kLenStart32;
  m_LenDirectBits = deflate64Mode ? kLenDirectBits64 : kLenDirectBits32;
  MatchFinder_Construct(&_lzInWindow);
}
コード例 #2
0
ファイル: ical2exchange.c プロジェクト: EasyLinux/Openchange
void _IcalEvent2Exchange(mapi_object_t *obj_folder, icalcomponent *vevent)
{
	struct ical2exchange ical2exchange;
	TALLOC_CTX	*mem_ctx;
	enum MAPISTATUS			retval;
	mapi_object_t		obj_message;
	ical2exchange.obj_message = &obj_message;

	ical2exchange.method=ICAL_METHOD_PUBLISH;
	mapi_object_init(&obj_message);
	
	/*sanity check*/
	if(icalcomponent_isa(vevent) != ICAL_VEVENT_COMPONENT) return;
	
	mem_ctx = talloc_named(mapi_object_get_session(obj_folder), 0, "ical2exchange");
	ical2exchange.lpProps = talloc_array(mem_ctx, struct SPropValue, 2);

	ical2exchange_init(&ical2exchange, mem_ctx);
	ical2exchange_get_properties(&ical2exchange, vevent);
	ical2exchange_convert_event(&ical2exchange);
	
	retval = CreateMessage(obj_folder, &obj_message);
	
	if (retval != MAPI_E_SUCCESS){
		mapi_errstr("CreateMessage", GetLastError());
	} else {
		retval = SetProps(&obj_message, 0, ical2exchange.lpProps, ical2exchange.cValues);
		if (retval != MAPI_E_SUCCESS){
			mapi_errstr("SetProps", GetLastError());
		} else {
			retval = SaveChangesMessage(obj_folder, &obj_message, KeepOpenReadOnly);
			if (retval != MAPI_E_SUCCESS){
				mapi_errstr("SaveChangesMessage", GetLastError());
			}
		}
	}
	

	MAPIFreeBuffer(ical2exchange.lpProps);
	ical2exchange_reset(&ical2exchange);
	talloc_free(mem_ctx);

}
コード例 #3
0
ファイル: font.cpp プロジェクト: jfrey-xx/extremetuxracer
void CFont::SetProps(const std::string &fontname, unsigned int size, const sf::Color& col) {
	SetProps(fontname, size);
	curr_col  = col;
}
コード例 #4
0
ファイル: import.c プロジェクト: AJStubzy/zentyal
static enum MAPISTATUS import_ocpf_file(TALLOC_CTX *mem_ctx,
                    const struct mbox_data *mdata,
                    mapi_object_t *obj_store,
                    mapi_object_t *obj_folder,
                    const char *base_path)
{
    int         ret;
    enum MAPISTATUS retval;
    mapi_object_t   obj_message;
    uint32_t    context_id;
    mapi_id_t   folder_id;
    uint32_t        cValues = 0;
    struct SPropValue *lpProps;

    DEBUG(4, ("[*] Importing OCPF file '%s'\n", base_path));

    /* Initialize OCPF context */
    ret = ocpf_init();
    if (ret == -1) {
        DEBUG(0, ("[!] ocpf_init\n"));
        return MAPI_E_CALL_FAILED;
    }

    folder_id =  mapi_object_get_id(obj_folder);
    if (folder_id == -1) {
        retval = MAPI_E_CALL_FAILED;
        DEBUG(0, ("[!] mapi_object_get_id: %s\n",
            mapi_get_errstr(retval)));
        return retval;
    }

    ret = ocpf_new_context(base_path, &context_id, OCPF_FLAGS_READ);
    if (ret == -1) {
        retval = MAPI_E_CALL_FAILED;
        DEBUG(0, ("[!] ocpf_new_context: %s\n", mapi_get_errstr(retval)));
        return retval;
    }

    ret = ocpf_parse(context_id);
    if (ret == -1) {
        retval = MAPI_E_CALL_FAILED;
        DEBUG(0, ("[!] ocpf_parse: %s\n", mapi_get_errstr(retval)));
        return retval;
    }

    /* Create the object */
    mapi_object_init(&obj_message);
    retval = CreateMessage(obj_folder, &obj_message);
    if (retval != MAPI_E_SUCCESS) {
        DEBUG(0, ("[!] CreateMessage: %s\n", mapi_get_errstr(retval)));
        mapi_object_release(&obj_message);
        return retval;
    }

    /* Set message recipients */
    //retval = ocpf_set_Recipients(mem_ctx, context_id, &obj_message);
    //if (retval != MAPI_E_SUCCESS && GetLastError() != MAPI_E_NOT_FOUND) return false;
    //errno = MAPI_E_SUCCESS;

    /* Set message properties */
    retval = ocpf_set_SPropValue(mem_ctx, context_id, obj_folder, &obj_message);
    if (retval == MAPI_W_ERRORS_RETURNED) {
        DEBUG(0, ("[!] ocpf_set_SPropValue: %s\n", mapi_get_errstr(retval)));
    } else if (retval != MAPI_E_SUCCESS) {
        DEBUG(0, ("[!] ocpf_set_SPropValue: %s\n", mapi_get_errstr(retval)));
        mapi_object_release(&obj_message);
        return retval;
    }

    /* Set message properties */
    lpProps = ocpf_get_SPropValue(context_id, &cValues);
    retval = SetProps(&obj_message, 0, lpProps, cValues);
    MAPIFreeBuffer(lpProps);
    if (retval != MAPI_E_SUCCESS) {
        DEBUG(0, ("[!] ocpf_get_SPropValue: %s\n", mapi_get_errstr(retval)));
        mapi_object_release(&obj_message);
        return retval;
    }

    retval = ocpf_server_set_folderID(context_id, folder_id);
    if (retval != MAPI_E_SUCCESS) {
        DEBUG(0, ("[!] ocpf_server_set_folderIF: %s\n", mapi_get_errstr(retval)));
        mapi_object_release(&obj_message);
        return retval;
    }

    /* Save message */
    retval = SaveChangesMessage(obj_folder, &obj_message, KeepOpenReadOnly);
    if (retval != MAPI_E_SUCCESS) {
        DEBUG(0, ("[!] SaveChangesMessage: %s\n", mapi_get_errstr(retval)));
        return retval;
    }

    mapi_object_release(&obj_message);
    ocpf_del_context(context_id);
    ocpf_release();
    return MAPI_E_SUCCESS;
}
コード例 #5
0
int main(int argc, char *argv[])
{
    int result[2][3][20] = {{{0,0}}};
    int                  num = 0,totalNum = 90;
    ZS_boolean_t eviction[3] = {0,0,0};
    ZS_boolean_t persistent[3] = {1,1,1};
    ZS_boolean_t fifo[3] = {0,0,0};
    ZS_boolean_t writethru[3]={1,1,1};
    ZS_boolean_t async_write[2]={0,1};
    ZS_durability_level_t durability[3] = {0,1,2/*ZS_DURABILITY_PERIODIC,ZS_DURABILITY_SW_CRASH_SAFE,
     ZS_DURABILITY_HW_CRASH_SAFE*/};

    if((fp = fopen("ZS_OpenContainer.log", "w+")) == 0){
        fprintf(stderr, " open failed!.\n");
        return -1;
    }
    
    if( 1 != preEnvironment())
        return 0;

    fprintf(fp, "************Begin to test ***************\n");
     for(int i = 0; i < 2; i++){
        p.async_writes = async_write[i];
        for(int j = 0; j< 3 ; j++){
            testCount = 0;
            SetProps(1024*1024,eviction[j],persistent[j],fifo[j],writethru[j],durability[j]);
            result[i][j][0] = ZSOpenContainer_basic_check1();
            result[i][j][1] = ZSOpenContainer_basic_check_size();
            result[i][j][2] = ZSOpenContainer_openCloseMore1(5);
            result[i][j][3] = ZSOpenContainer_openCloseMore2(5);
            result[i][j][4] = ZSOpenContainer_openCloseMore_createObj(5);
            result[i][j][5] = ZSOpenContainer_openMore(5);
            result[i][j][6] = ZSOpenContainer_createDeletedMore(5);
            result[i][j][7] = ZSOpenContainer_createMore(2);
            result[i][j][8] = ZSOpenContainer_invalid_cguid();
            result[i][j][9] = ZSOpenContainer_invalid_flags();
            result[i][j][10] = ZSOpenContainer_flags_check();
            result[i][j][11] = ZSOpenContainer_invalid_cname1();
            result[i][j][12] = ZSOpenContainer_invalid_cname2();
            result[i][j][13] = ZSOpenContainer_invalid_cname3();
            result[i][j][14] = ZSOpenContainer_invalid_props();
       }
    }

    CleanEnvironment();
     
    for(int j = 0; j < 2; j++){
        for(int k =0; k < 3; k++){
            fprintf(stderr, "when async_write = %d.\n",async_write[j]);
            fprintf(stderr, "test mode:eviction=%d,persistent=%d,fifo=%d,durability=%d.\n",eviction[k],persistent[k],fifo[k],k+1);
            for(int i = 0; i < 15; i++){
                if(result[j][k][i] == 1){
                    fprintf(stderr, "ZSOpenContainer test %drd success.\n",i+1);
                    num++;
                }
                else if(result[j][k][i] == -1)
                    fprintf(stderr, "ZSOpenContainer test %drd fail to test.\n",i+1);
                else if(result[j][k][i] == 0)
                    fprintf(stderr, "ZSOpenContainer test %drd failed.\n",i+1);
                else fprintf(stderr, "ZSOpenContainer test %drd hit wrong.\n",i+1);
           }
        }
    }
    
    if(totalNum == num){
        fprintf(stderr,"************ test pass!******************\n");
	fprintf(stderr, "#The related test script is ZS_OpenContainer.c\n");
	fprintf(stderr, "#If you want, you can check test details in ZS_OpenContainer.log\n");
        return 0;
    }
    else 
        fprintf(stderr, "************%d test fail!******************\n",totalNum-num);
	fprintf(stderr, "#The related test script is ZS_OpenContainer.c\n");
	fprintf(stderr, "#If you want, you can check test details in ZS_OpenContainer.log\n");
        return -1;
}
コード例 #6
0
 RetCode BOSS_CALL ServiceRegistry::Load(IIStream *stream)
 {
   if (!stream)
     return Status::InvalidArgument;
   std::lock_guard<std::recursive_mutex> Lock(Mtx);
   try
   {
     auto Registry = PropertyBagType::Create(RegistryTag);
     RetCode Code = Registry->Load(stream);
     if (Code != Status::Ok)
       return Code;
     RefObjPtr<IBase> ServiceEnumProp;
     if ((Code = Registry->GetProperty(ServicesTag, ServiceEnumProp.GetPPtr())) != Status::Ok)
       return Code;
     RefObjQIPtr<IEnum> ServiceEnum(ServiceEnumProp);
     if (!ServiceEnum.Get())
       return Status::Fail;
     ServicePool NewServices;
     for (RefObjPtr<IBase> i ; ServiceEnum->Next(i.GetPPtr()) == Status::Ok ; i.Release())
     {
       RefObjQIPtr<IPropertyBag> ServiceItem(i);
       if (!ServiceItem.Get())
         return Status::Fail;
       RefObjPtr<IBase> EntId;
       if ((Code = ServiceItem->GetProperty(ServiceIdTag, EntId.GetPPtr())) != Status::Ok)
         return Code;
       RefObjQIPtr<IEntityId> EntSrvId(EntId);
       if (!EntSrvId.Get())
         return Status::Fail;
       ServiceId SrvId = 0;
       if ((Code = EntSrvId->GetId(&SrvId)) != Status::Ok)
         return Code;
       RefObjPtr<IBase> ClassIdsEnumProp;
       if ((Code = ServiceItem->GetProperty(ClassIdsTag, ClassIdsEnumProp.GetPPtr())) != Status::Ok)
         return Code;
       RefObjQIPtr<IEnum> ClassIdsEnum(ClassIdsEnumProp);
       if (!ClassIdsEnum.Get())
         return Status::Fail;
       RefObjPtr<IBase> ModulePathProp;
       RefObjPtr<IServiceInfo> ServiceInfo;
       if (ServiceItem->GetProperty(ModulePathTag, ModulePathProp.GetPPtr()) == Status::Ok)
       {
         RefObjQIPtr<IString> ModulePath(ModulePathProp);
         if (!ModulePath.Get())
           return Status::Fail;
         auto LocalSrvInfo = Base<LocalServiceInfo>::Create();
         LocalSrvInfo->SetServiceId(SrvId);
         LocalSrvInfo->AddCoClassIds(ClassIdsEnum);
         LocalSrvInfo->SetModulePath(ModulePath);
         ServiceInfo = LocalSrvInfo;
       }
       else
       {
         RefObjPtr<IBase> RemotePropertiesProp;
         if (ServiceItem->GetProperty(RemotePropertiesTag, RemotePropertiesProp.GetPPtr()) == Status::Ok)
         {
           RefObjQIPtr<IPropertyBag> RemoteProperties(RemotePropertiesProp);
           if (!RemoteProperties.Get())
             return Status::Fail;
           auto RemoteSrvInfo = Base<RemoteServiceInfo>::Create();
           RemoteSrvInfo->SetServiceId(SrvId);
           RemoteSrvInfo->AddCoClassIds(ClassIdsEnum);
           RemoteSrvInfo->SetProps(RemoteProperties);
           ServiceInfo = RemoteSrvInfo;
         }
         else
           return Status::Fail;
       }
       if ((Code = ClassIdsEnum->Reset()) != Status::Ok)
         return Code;
       for (RefObjPtr<IBase> j ; ClassIdsEnum->Next(j.GetPPtr()) == Status::Ok ; j.Release())
       {
         RefObjQIPtr<IEntityId> ClsId(j);
         if (!ClsId.Get())
           return Status::Fail;
         ClassId Id = 0;
         if ((Code = ClsId->GetId(&Id)) != Status::Ok)
           return Code;
         NewServices[Id] = ServiceInfo;
       }
     }
     std::swap(Services, NewServices);
     return Status::Ok;
   }
   catch (...)
   {
     return Status::Fail;
   }
   return Status::Ok;
 }