[Klone-users] Open a file in embedded system

Mickael Auger mickael.auger at gmail.com
Fri Jun 12 09:13:15 EDT 2009


Hi Stefano,

Sorry to have you disturbed. It was an error :(
I made a "make clean" and it's ok.

Bye and thanks for your speed response :)

2009/6/12 Stefano Barbato <barbato at koanlogic.com>

> Hi Mickael,
>
> do you get a runtime error on windows? is there any message in the log
> file?
>
> stefano
>
>
> On 12/giu/09, at 11:07, Mickael Auger wrote:
>
>  Hi,
>>
>> Situation :
>> - I compile my application to WindowsXP with Cygwin.
>> - I use KLone 2.2.0
>>
>>
>> Question and problem :
>> I have a file, "lang.conf", in "/webapp/etc" (like "kloned.conf").
>>
>> I read this file with source code (source given by KLone team in a
>> previous message) :
>> =========================
>> static int drv_io_open(const char *uri, void **parg);
>> static int drv_io_close(void *arg);
>> static char *drv_io_gets(void *arg, char *buf, size_t size);
>> static u_config_driver_t drv_embfs = {
>>    drv_io_open, drv_io_close, drv_io_gets, NULL
>> };
>> static int drv_io_open(const char *uri, void **parg){
>>    io_t *io = NULL;
>>    dbg_err_if(uri == NULL);
>>    dbg_err_if(strlen(uri) == 0);
>>    dbg_err_if(parg == NULL);
>>    warn_err_ifm(emb_open(uri, &io),
>>            "unable to open embedded resource: %s", uri);
>>    *parg = io;
>>    return 0;
>> err:
>>    if(io)
>>        io_free(io);
>>    return ~0;
>> }
>> static int drv_io_close(void *arg){
>>    io_t *io = (io_t*) arg;
>>    dbg_err_if(io == NULL);
>>    io_free(io);
>>    return 0;
>> err:
>>    return ~0;
>> }
>> static char *drv_io_gets(void *arg, char *buf, size_t size){
>>    io_t *io = (io_t*)arg;
>>    dbg_err_if (arg == NULL);
>>    dbg_err_if (buf == NULL);
>>    nop_err_if(io_gets(io, buf, size) <= 0);
>>    return buf;
>> err:
>>    return NULL;
>> }
>>
>>
>> //my function to read my conf file.
>> void printLangConf()
>> {
>>  u_config_t *myconffile;
>>  if(u_config_load_from_drv("/etc/lang.conf",&drv_embfs,0,&myconffile)==0)
>>    u_config_print(myconffile,0);
>> }
>> ======================================
>>
>> This source code is functional in Linux system (compile with standard
>> toolchain of Linux), but it's not functional in WindowsXP system (compile
>> with cygwin).
>>
>> Can you have a solution, please ?
>> In WindowsXP, I don't understand that "webapp/etc/kloned.conf" is read but
>> not my "webapp/etc/lang.conf". I think that I don't use the good code.
>>
>> For information, I test this function that read my conf file if this file
>> is external at klone binary.
>> Hovewer, I wish keep my conf file in embedded system to protect its of
>> modifications.
>> ======================================
>> void printLangConf()
>> {
>>  u_config_t *myconffile;
>>  if(u_config_load_from_file("lang.conf",&myconffile)==0)
>>    u_config_print(myconffile,0);
>> }
>> ======================================
>>
>> Thanks.
>> --
>> Mickaël AUGER
>>
>> _______________________________________________
>> Klone-users mailing list
>> Klone-users at koanlogic.com
>> http://koanlogic.com/cgi-bin/mailman/listinfo/klone-users
>>
>
>
> _______________________________________________
> Klone-users mailing list
> Klone-users at koanlogic.com
> http://koanlogic.com/cgi-bin/mailman/listinfo/klone-users
>



-- 
Mickaël AUGER
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://koanlogic.com/pipermail/klone-users/attachments/20090612/4fb8d176/attachment.htm


More information about the klone-users mailing list