Ignore:
Timestamp:
Aug 16, 2016, 5:41:49 PM (9 years ago)
Author:
Silvan Scherrer
Message:

samba client: add the possibility to have logfiles per share

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/client/src/smbwrp.c

    r959 r960  
    4040}
    4141
    42 void smbwrp_Logging()
    43 {
    44         char slogfile[_MAX_PATH +1] = {0};
    45         char slogfilename[] = "log.smbc";
    46         char *env = getenv("LOGFILES");
    47         if (env != NULL)
    48         {
    49            strncpy(slogfile, env, sizeof(slogfile) -1);
    50            strncat(slogfile, "\\", sizeof(slogfile) - strlen(slogfile) -1);
    51            strncat(slogfile, slogfilename, sizeof(slogfile) - strlen(slogfile) -1);
    52         }
    53         else
    54            strncpy(slogfile, slogfilename, sizeof(slogfile) -1);
    55 
    56         // init samba for debug messages
    57         setup_logging("ndpsmb", DEBUG_FILE);
    58         lp_set_logfile(slogfile);
    59         lp_set_cmdline("log level", "10");
    60         reopen_logs();
     42void smbwrp_Logging(Resource *pRes)
     43{
     44        if (pRes && pRes->loglevel > 0)
     45        {
     46           // init samba for debug messages
     47           setup_logging("ndpsmb", DEBUG_FILE);
     48
     49           char smblevel[3];
     50           itoa(pRes->loglevel, smblevel, 10);
     51           lp_set_logfile(pRes->smb_logfile);
     52           lp_set_cmdline("log level", smblevel);
     53           reopen_logs();
     54        }
    6155
    6256        return;
     
    7670 * initialise structures
    7771 */
    78 int _System smbwrp_init(void)
    79 {
    80         static int initialised = 0;
     72int _System smbwrp_init(Resource *pRes)
     73{
    8174        char *p;
    8275
    83         if (initialised)
     76        if (pRes->smb_initialised)
    8477           return 0;
    8578
    86         initialised = 1;
     79        pRes->smb_initialised = 1;
    8780
    8881        lp_set_in_client(true); // Make sure that we tell lp_load we are client
     
    9184
    9285        if (!lp_load(get_dyn_CONFIGFILE(),true,false,false,true))
    93            debuglocal(0,("The initial smb.conf is missing, defaults are used!\n"));
     86           debuglocal(pRes, 0,("The initial smb.conf is missing, defaults are used!\n"));
    9487
    9588        load_interfaces();
     
    9891           return 1;
    9992
    100         if (writeLog())
    101            smbwrp_Logging();
    102 
     93        smbwrp_Logging(pRes);
     94
     95        debuglocal(pRes, 5,("smbwrp_init done\n"));
    10396        /*
    10497        if ((p=smbw_getshared("RESOLVE_ORDER")))
     
    116109        */
    117110        BlockSignals(True, SIGPIPE);
     111        return;
    118112}
    119113
     
    214208 * return a connection to a server
    215209 */
    216 int _System smbwrp_connect( Resource* pRes, cli_state ** cli)
     210int _System smbwrp_connect(Resource* pRes, cli_state ** cli)
    217211{
    218212        smbwrp_server * srv = &pRes->srv;
     
    231225        zero_sockaddr(&ss);
    232226
    233         debuglocal(1,"Connecting to \\\\%s:*********@%s:%s\\%s. Master %s:%d\n", srv->username,  workgroup, server, share, srv->master, srv->ifmastergroup);
     227        debuglocal(pRes, 1,"Connecting to \\\\%s:*********@%s:%s\\%s. Master %s:%d\n", srv->username,  workgroup, server, share, srv->master, srv->ifmastergroup);
    234228
    235229        if (!*server) {
     
    273267        if (pRes->krb5support == 1)
    274268        {
    275            debuglocal(1,"Kerberos support enabled\n");
     269           debuglocal(pRes, 1,"Kerberos support enabled\n");
    276270           c->use_kerberos = True;
    277271        }
     
    289283        }
    290284
    291         debuglocal(4," session request ok\n");
     285        debuglocal(pRes, 4,"session request ok\n");
    292286
    293287        if (!NT_STATUS_IS_OK(cli_negprot(c))) {
     
    296290        }
    297291
    298         debuglocal(4," session setuping for <%s>/<********> in <%s> %08x %08x %08x\n", srv->username,  workgroup, c->protocol, c->sec_mode, c->capabilities);
     292        debuglocal(pRes, 4,"session setuping for <%s>/<********> in <%s> %08x %08x %08x\n", srv->username,  workgroup, c->protocol, c->sec_mode, c->capabilities);
    299293
    300294        if (!NT_STATUS_IS_OK(cli_session_setup(c, srv->username,
     
    303297              workgroup)))
    304298        {
    305            debuglocal(4,"%s/******** login failed\n", srv->username);
     299           debuglocal(pRes, 4,"%s/******** login failed\n", srv->username);
    306300           loginerror = 1; // save the login error
    307301
    308302           // try an anonymous login if it failed
    309303           if (!NT_STATUS_IS_OK(cli_session_setup(c, "", "", 0,"", 0, workgroup))) {
    310               debuglocal(4,"Anonymous login failed\n");
     304              debuglocal(pRes, 4,"Anonymous login failed\n");
    311305              cli_shutdown(c);
    312306              return 6;
    313307           }
    314            debuglocal(4,"Anonymous login successful\n");
     308           debuglocal(pRes, 4,"Anonymous login successful\n");
    315309           status = cli_init_creds(c, "", lp_workgroup(), "");
    316310        } else {
     
    319313
    320314        if (!NT_STATUS_IS_OK(status)) {
    321            debuglocal(4,"cli_init_creds() failed\n");
     315           debuglocal(pRes, 4,"cli_init_creds() failed\n");
    322316           cli_shutdown(c);
    323317           // if loginerror is != 0 means normal login failed, but anonymous login worked
     
    328322        }
    329323
    330         debuglocal(4," session setup ok. Sending tconx <%s> <********>\n", share);
     324        debuglocal(pRes, 4,"session setup ok. Sending tconx <%s> <********>\n", share);
    331325
    332326        // YD ticket:58 we need to check resource type to avoid connecting to printers.
     
    348342        }
    349343
    350         debuglocal(4," tconx ok. cli caps %08x\n", c->capabilities);
     344        debuglocal(pRes, 4,"tconx ok. cli caps %08x\n", c->capabilities);
    351345       
    352346        // save cli_state pointer
     
    359353 * close a connection to a server
    360354 */
    361 void _System smbwrp_disconnect( Resource* pRes, cli_state * cli)
     355void _System smbwrp_disconnect(Resource* pRes, cli_state * cli)
    362356{
    363357        // this call will free all buffers, close handles and free cli mem
     
    369363 * a wrapper for open()
    370364 */
    371 int _System smbwrp_open(cli_state * cli, smbwrp_file * file)
     365int _System smbwrp_open(Resource *pRes, cli_state * cli, smbwrp_file * file)
    372366{
    373367        uint16_t fd = 0;
     
    379373           file->denymode = DENY_NONE;
    380374
    381         debuglocal(4,"cli_open(%s) attr %08x mode %02x denymode %02x\n", file->fname, file->openattr, file->openmode, file->denymode);
     375        debuglocal(pRes, 4,"cli_open(%s) attr %08x mode %02x denymode %02x\n", file->fname, file->openattr, file->openmode, file->denymode);
    382376        if (!NT_STATUS_IS_OK(cli_open(cli, file->fname, file->openmode, file->denymode, &fd)))
    383377           return os2cli_errno(cli);
     
    392386 * a wrapper for read()
    393387 */
    394 int _System smbwrp_read(cli_state * cli, smbwrp_file * file, void *buf, unsigned long count, unsigned long * result)
     388int _System smbwrp_read(Resource *pRes, cli_state * cli, smbwrp_file * file, void *buf, unsigned long count, unsigned long * result)
    395389{
    396390        int ret;
     
    412406 * a wrapper for write()
    413407 */
    414 int _System smbwrp_write(cli_state * cli, smbwrp_file * file, void *buf, unsigned long count, unsigned long * result)
     408int _System smbwrp_write(Resource *pRes, cli_state * cli, smbwrp_file * file, void *buf, unsigned long count, unsigned long * result)
    415409{
    416410        NTSTATUS status;
     
    421415       
    422416        *result = 0;
    423         //debuglocal(1,("Write %x %d %lld %d", cli, file->fd, file->offset, count));
     417        debuglocal(pRes, 10, "Write %x %d %lld %d\n", cli, file->fd, file->offset, count);
    424418        status = cli_writeall(cli, file->fd, 0, buf, file->offset, count, &ret);
    425419        if (!NT_STATUS_IS_OK(status))
     
    435429 * a wrapper for close()
    436430 */
    437 int _System smbwrp_close(cli_state * cli, smbwrp_file * file)
     431int _System smbwrp_close(Resource *pRes, cli_state * cli, smbwrp_file * file)
    438432{
    439433        int rc = 0;
     
    441435           return maperror(EINVAL);
    442436
    443         debuglocal(4,"smpwrp_close updatetime: %d\n", file->updatetime);
     437        debuglocal(pRes, 4,"smpwrp_close updatetime: %d\n", file->updatetime);
    444438
    445439        if (file->updatetime == 1)
    446440        {
    447441           file->mtime = time(NULL);
    448            debuglocal(4,"cli_close new mtime %lu\n", file->mtime);
     442           debuglocal(pRes, 4,"cli_close new mtime %lu\n", file->mtime);
    449443        }
    450444       
     
    454448        if (!rc && (file->openattr || file->mtime || file->ctime))
    455449        {
    456            debuglocal(4,"Set pathinfo on close %s %08x %d %d\n", file->fname, file->openattr, file->mtime, file->ctime);
    457            if (!NT_STATUS_IS_OK(cli_setpathinfo_basic(cli, file->fname, file->ctime, 0, file->mtime, 0, file->openattr)))
    458               debuglocal(4,"Set pathinfo on close failed %d\n", os2cli_errno(cli));
     450           debuglocal(pRes, 4,"Set pathinfo on close %s %08x %d %d\n", file->fname, file->openattr, file->mtime, file->ctime);
     451           if (!NT_STATUS_IS_OK(cli_setpathinfo_basic(cli, file->fname, file->ctime, 0, file->mtime, 0, file->openattr)))
     452           {
     453              debuglocal(pRes, 4,"Set pathinfo on close failed %d\n", os2cli_errno(cli));
     454           }
    459455        }
    460456
     
    469465}
    470466
    471 int _System smbwrp_setfilesize(cli_state * cli, smbwrp_file * file, long long newsize)
     467int _System smbwrp_setfilesize(Resource *pRes, cli_state * cli, smbwrp_file * file, long long newsize)
    472468{
    473469        int rc = 0;
     
    475471           return maperror(EINVAL);
    476472
    477         debuglocal(4,"cli_setnewfilesize(%s) %lld\n", file->fname, newsize);
     473        debuglocal(pRes, 4,"cli_setnewfilesize(%s) %lld\n", file->fname, newsize);
    478474        if (!NT_STATUS_IS_OK(cli_ftruncate(cli, file->fd, newsize)))
    479475        {
     
    489485           file->openmode &= ~(O_CREAT | O_EXCL);
    490486           file->openmode |= O_TRUNC;
    491            debuglocal(4,"cli_setnewfileszie : cli_open(%s) attr %08x mode %02x denymode %02x\n", file->fname, file->openattr, file->openmode, file->denymode);
     487           debuglocal(pRes, 4,"cli_setnewfileszie : cli_open(%s) attr %08x mode %02x denymode %02x\n", file->fname, file->openattr, file->openmode, file->denymode);
    492488           if (!NT_STATUS_IS_OK(cli_open(cli, file->fname, file->openmode, file->denymode, &fd)))
    493489              return os2cli_errno(cli);
     
    501497 * a wrapper for rename()
    502498 */
    503 int _System smbwrp_rename(cli_state * cli, char *oldname, char *newname)
     499int _System smbwrp_rename(Resource *pRes, cli_state * cli, char *oldname, char *newname)
    504500{
    505501        if (!cli || !oldname || !newname)
    506502           return maperror(EINVAL);
    507503
    508         debuglocal(1,"Rename <%s> -> <%s>\n", oldname, newname);
     504        debuglocal(pRes, 4,"Rename <%s> -> <%s>\n", oldname, newname);
    509505        if (!NT_STATUS_IS_OK(cli_rename(cli, oldname, newname)))
    510506           return os2cli_errno(cli);
     
    517513 * a wrapper for chmod()
    518514 */
    519 int _System smbwrp_setattr(cli_state * cli, smbwrp_fileinfo *finfo)
     515int _System smbwrp_setattr(Resource *pRes, cli_state * cli, smbwrp_fileinfo *finfo)
    520516{
    521517        if (!cli || !finfo || !*finfo->fname)
    522518           return maperror(EINVAL);
    523519
    524         debuglocal(4,"Setting on <%s> attr %04x, time %lu (timezone /%lu\n", finfo->fname, finfo->attr, finfo->mtime, finfo->mtime + get_time_zone(finfo->mtime));
     520        debuglocal(pRes, 4,"Setting on <%s> attr %04x, time %lu (timezone /%lu\n", finfo->fname, finfo->attr, finfo->mtime, finfo->mtime + get_time_zone(finfo->mtime));
    525521        // we already have gmt time, so no need to add timezone
    526522        // if (!cli_setatr(cli, finfo->fname, finfo->attr, finfo->mtime + (finfo->mtime == 0 ? 0 : get_time_zone(finfo->mtime)))
     
    535531 * a wrapper for unlink()
    536532 */
    537 int _System smbwrp_unlink(cli_state * cli, const char *fname)
     533int _System smbwrp_unlink(Resource *pRes, cli_state * cli, const char *fname)
    538534{
    539535        if (!cli || !fname)
     
    561557 * a wrapper for lseek()
    562558 */
    563 int _System smbwrp_lseek(cli_state * cli, smbwrp_file * file, int whence, long long offset)
     559int _System smbwrp_lseek(Resource *pRes, cli_state * cli, smbwrp_file * file, int whence, long long offset)
    564560{
    565561        off_t size;
     
    567563           return maperror(EINVAL);
    568564
    569         debuglocal(4,"lseek %d %lld %lld\n", whence, offset, file->offset);
     565        debuglocal(pRes, 4,"lseek %d %lld %lld\n", whence, offset, file->offset);
    570566
    571567        switch (whence) {
     
    599595 * this is needed because win95 sometimes refuses the qpathinfo
    600596 */
    601 int _System smbwrp_getattr(smbwrp_server *srv, cli_state * cli, smbwrp_fileinfo *finfo)
     597int _System smbwrp_getattr(Resource *pRes, smbwrp_server *srv, cli_state * cli, smbwrp_fileinfo *finfo)
    602598{
    603599        SMB_INO_T ino = 0;
     
    609605           return maperror(EINVAL);
    610606
    611         debuglocal(4,"getattr %d %d <%s>\n", cli->capabilities & CAP_NOPATHINFO2, cli->capabilities & CAP_NT_SMBS, finfo->fname);
     607        debuglocal(pRes, 4,"getattr %d %d <%s>\n", cli->capabilities & CAP_NOPATHINFO2, cli->capabilities & CAP_NT_SMBS, finfo->fname);
    612608        if (!(cli->capabilities & CAP_NOPATHINFO2) &&
    613609            NT_STATUS_IS_OK(cli_qpathinfo2(cli, finfo->fname, &ctime, &atime,
     
    636632            || (strncmp(cli->dev,"LPT",3) == 0))
    637633        {
    638            debuglocal(4,"getattr not a share.\n");
     634           debuglocal(pRes, 4,"getattr not a share.\n");
    639635           *(time_t *)&finfo->ctime = time (NULL);
    640636           *(time_t *)&finfo->atime = time (NULL);
     
    663659        if (NT_STATUS_IS_OK(cli_getatr(cli, finfo->fname, (unsigned short *)&finfo->attr, &finfo->size, (time_t *)&finfo->mtime)))
    664660        {
    665            //debuglocal(2,("gotattr1 %08x <%s>\n", finfo->attr, finfo->fname));
     661           debuglocal(pRes, 10,("gotattr1 %08x <%s>\n", finfo->attr, finfo->fname));
    666662           finfo->mtime -= get_time_zone(finfo->mtime);
    667663           finfo->atime = finfo->atime;  //was mtime
     
    678674 * this is needed because win95 sometimes refuses the qpathinfo
    679675 */
    680 int _System smbwrp_fgetattr(cli_state * cli, smbwrp_file *file, smbwrp_fileinfo *finfo)
     676int _System smbwrp_fgetattr(Resource *pRes, cli_state * cli, smbwrp_file *file, smbwrp_fileinfo *finfo)
    681677{
    682678        struct timespec ctime;
     
    725721        if (state && finfo)
    726722        {
    727            filelist_state * st  = (filelist_state *)state;
     723           filelist_state *st  = (filelist_state *)state;
    728724           char fullname[ _MAX_PATH] = {0};
    729            debuglocal(8,"adding <%s> %d %d %d\n", finfo->fname, sizeof(st->finfo), st->datalen, sizeof(st->finfo.fname));
     725           debuglocal(st->pConn->pRes, 8,"adding <%s> %d %d %d\n", finfo->fname, sizeof(st->finfo), st->datalen, sizeof(st->finfo.fname));
    730726           memcpy(&st->finfo, finfo, sizeof(st->finfo));
    731727           strncpy(fullname, st->dir, strlen(st->dir));
    732728           strncat(fullname, finfo->fname, sizeof(fullname) - strlen(fullname) -1);
    733729           strncpy(st->finfo.fname, fullname, sizeof(st->finfo.fname));
    734            getfindinfoL( st->pConn, st->plist, &st->finfo, st->ulAttribute, st->dir_mask);
     730           getfindinfoL(st->pConn, st->plist, &st->finfo, st->ulAttribute, st->dir_mask);
    735731        }
    736732        return;
     
    796792static int list_files(struct cli_state *cli, const char *mask, uint16 attribute,
    797793                  void (*fn)(const char *, smbwrp_fileinfo *, const char *,
    798                              void *), void *state)
     794                             void *), filelist_state *state)
    799795{
    800796        TALLOC_CTX *frame = talloc_stackframe();
     
    807803        void *dircachectx = NULL;
    808804        smbwrp_fileinfo wrpfinfo;
     805        Resource *pRes = state->pConn->pRes;
    809806
    810807        // Try to get the listing from cache.
     
    826823        ? SMB_FIND_FILE_BOTH_DIRECTORY_INFO : SMB_FIND_EA_SIZE;
    827824
    828         debuglocal(4,"list_files level %d. mask <%s>\n", info_level, mask);
     825        debuglocal(pRes, 4,"list_files level %d. mask <%s>\n", info_level, mask);
    829826
    830827        req = cli_list_send(frame, ev, cli, mask, attribute, info_level);
     
    843840        dircachectx = dircache_write_begin(state, num_finfo);
    844841
    845         debuglocal(4,"list_files: got %d files\n", num_finfo);
     842        debuglocal(pRes, 4,"list_files: got %d files\n", num_finfo);
    846843
    847844        for (i=0; i<num_finfo; i++) {
     
    857854           fn(cli->dfs_mountpoint, &wrpfinfo, mask, state);
    858855           // Also add the entry to the cache.
    859            dircache_write_entry(dircachectx, &wrpfinfo);
    860         }
    861 
    862         dircache_write_end(dircachectx);
     856           dircache_write_entry(pRes, dircachectx, &wrpfinfo);
     857        }
     858
     859        dircache_write_end(pRes, dircachectx);
    863860 fail:
    864861        TALLOC_FREE(frame);
     
    869866 * open a directory on the server
    870867 */
    871 int _System smbwrp_filelist(smbwrp_server *srv, cli_state * cli, filelist_state * state)
     868int _System smbwrp_filelist(Resource *pRes, smbwrp_server *srv, cli_state * cli, filelist_state * state)
    872869{
    873870        if (!srv || !cli || !state || !*state->mask)
    874871           return maperror(EINVAL);
    875872
    876         debuglocal(1,"Filelist <%s> on master <%s> wgrp <%s> server <%s> share <%s> clidev <%s>\n", state->mask, srv->master, srv->workgroup, srv->server_name, srv->share_name, cli->dev);
     873        debuglocal(pRes, 1,"Filelist <%s> on master <%s> wgrp <%s> server <%s> share <%s> clidev <%s>\n", state->mask, srv->master, srv->workgroup, srv->server_name, srv->share_name, cli->dev);
    877874        if (*srv->workgroup == 0 && *srv->server_name == 0)
    878875        {
     
    915912 * a wrapper for chdir()
    916913 */
    917 int _System smbwrp_chdir(smbwrp_server *srv, cli_state * cli, char *fname)
     914int _System smbwrp_chdir(Resource *pRes, smbwrp_server *srv, cli_state * cli, char *fname)
    918915{
    919916        unsigned short mode = aDIR;
     
    923920
    924921        strncpy(finfo.fname, fname, sizeof(finfo.fname) - 1);
    925         if (smbwrp_getattr(srv, cli, &finfo))
     922        if (smbwrp_getattr(pRes, srv, cli, &finfo))
    926923           return os2cli_errno(cli);
    927924
     
    938935 * a wrapper for mkdir()
    939936 */
    940 int _System smbwrp_mkdir(cli_state * cli, char *fname)
     937int _System smbwrp_mkdir(Resource *pRes, cli_state * cli, char *fname)
    941938{
    942939        if (!cli || !fname)
     
    952949 * a wrapper for rmdir()
    953950 */
    954 int _System smbwrp_rmdir(cli_state * cli, char *fname)
     951int _System smbwrp_rmdir(Resource *pRes, cli_state * cli, char *fname)
    955952{
    956953        if (!cli || !fname)
     
    966963 * set EA for a path
    967964 */
    968 int _System smbwrp_setea(cli_state * cli, char *fname, char * name, unsigned char * value, int size)
     965int _System smbwrp_setea(Resource *pRes, cli_state * cli, char *fname, char * name, unsigned char * value, int size)
    969966{
    970967        if (!cli || !fname || !name)
     
    980977 * set EA for a file
    981978 */
    982 int _System smbwrp_fsetea(cli_state * cli, smbwrp_file *file, char * name, unsigned char * value, int size)
     979int _System smbwrp_fsetea(Resource *pRes, cli_state * cli, smbwrp_file *file, char * name, unsigned char * value, int size)
    983980{
    984981        if (!cli || !file || !name)
     
    10071004#pragma pack()
    10081005
    1009 static int unilistea(cli_state * cli, char *fname, void * buffer, unsigned long size)
     1006static int unilistea(Resource *pRes, cli_state * cli, char *fname, void * buffer, unsigned long size)
    10101007{
    10111008        int fnum, i;
     
    10241021        if (!NT_STATUS_IS_OK(cli_get_ea_list_path(cli, fname, mem_ctx, &num_eas, &ea_list)))
    10251022        {
    1026            debuglocal(4,"ea_get_file list failed - %s\n", cli_errstr(cli));
     1023           debuglocal(pRes, 4,"ea_get_file list failed - %s\n", cli_errstr(cli));
    10271024           talloc_destroy(mem_ctx);
    10281025           return os2cli_errno(cli);
    10291026        }
    10301027
    1031         debuglocal(4,"num_eas = %d\n", num_eas);
     1028        debuglocal(pRes, 4,"num_eas = %d\n", num_eas);
    10321029
    10331030        // we will count that os/2 max EA size for file is 64kb
     
    10361033        {
    10371034           int namelen = strlen(ea_list[i].name);
    1038            debuglocal(4, "%d Got EA <%s> with namelen %d, size %d. Gross %d. Buf %d\n", i, ea_list[i].name, namelen, ea_list[i].value.length, gotsize, size);
     1035           debuglocal(pRes, 4, "%d Got EA <%s> with namelen %d, size %d. Gross %d. Buf %d\n", i, ea_list[i].name, namelen, ea_list[i].value.length, gotsize, size);
    10391036           if (namelen > 0xFF || ea_list[i].value.length > 0xFFFF)
    10401037           {
    1041               debuglocal(4, "Skip EA <%s> with namelen %d, size %d\n", ea_list[i].name, namelen, ea_list[i].value.length);
     1038              debuglocal(pRes, 4, "Skip EA <%s> with namelen %d, size %d\n", ea_list[i].name, namelen, ea_list[i].value.length);
    10421039              continue;
    10431040           }
     
    10561053        }
    10571054        pfealist->cbList = gotsize;
    1058         debuglocal(4,"ret size = %d\n", gotsize);
     1055        debuglocal(pRes, 4,"ret size = %d\n", gotsize);
    10591056
    10601057        talloc_destroy(mem_ctx);
     
    10651062 * lists EA of a path
    10661063 */
    1067 int _System smbwrp_listea(cli_state * cli, char *fname, void * buffer, unsigned long size)
     1064int _System smbwrp_listea(Resource *pRes, cli_state * cli, char *fname, void * buffer, unsigned long size)
    10681065{
    10691066        if (!cli || !fname || !buffer)
    10701067           return maperror(EINVAL);
    10711068
    1072         debuglocal(4,"EALIst for <%s>\n", fname);
    1073         return unilistea(cli, fname, buffer, size);
     1069        debuglocal(pRes, 4,"EALIst for <%s>\n", fname);
     1070        return unilistea(pRes, cli, fname, buffer, size);
    10741071}
    10751072
     
    10771074 * lists EA of a file
    10781075 */
    1079 int _System smbwrp_flistea(cli_state * cli, smbwrp_file *file, void * buffer, unsigned long size)
     1076int _System smbwrp_flistea(Resource *pRes, cli_state * cli, smbwrp_file *file, void * buffer, unsigned long size)
    10801077{
    10811078        if (!cli || !file || !buffer)
    10821079           return maperror(EINVAL);
    10831080
    1084         debuglocal(4,"FEALIst for <%s>\n", file->fname);
    1085         return unilistea(cli, file->fname, buffer, size);
     1081        debuglocal(pRes, 4,"FEALIst for <%s>\n", file->fname);
     1082        return unilistea(pRes, cli, file->fname, buffer, size);
    10861083}
    10871084
     
    10891086 * Check the space on a device.
    10901087 */
    1091 int _System smbwrp_dskattr(cli_state * cli, FSALLOCATE *pfsa)
     1088int _System smbwrp_dskattr(Resource *pRes, cli_state * cli, FSALLOCATE *pfsa)
    10921089{
    10931090        int total, bsize, avail;
     
    10981095        if (!NT_STATUS_IS_OK(cli_dskattr(cli, &bsize, &total, &avail)))
    10991096        {
    1100            debuglocal(4,"Error in dskattr: %s\n",cli_errstr(cli));
    1101            return os2cli_errno(cli);
    1102         }
    1103 
    1104         debuglocal(4,"\n\t\t%d blocks of size %d. %d blocks available\n",
     1097           debuglocal(pRes, 4,"Error in dskattr: %s\n",cli_errstr(cli));
     1098           return os2cli_errno(cli);
     1099        }
     1100
     1101        debuglocal(pRes, 4,"\n\t\t%d blocks of size %d. %d blocks available\n",
    11051102                   total, bsize, avail);
    11061103
Note: See TracChangeset for help on using the changeset viewer.