Ignore:
Timestamp:
Jan 24, 2011, 12:01:41 PM (15 years ago)
Author:
Silvan Scherrer
Message:

Samba Client 2.0: more errno fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/client-2.0/src/ndpsmb.c

    r520 r527  
    10661066                                }
    10671067                        }
    1068                         else
    1069                         {
     1068
     1069                        if (rc == NO_ERROR)
     1070                        {
    10701071                                finfo.easize = -1;
    10711072                                getfindinfoL(pConn, plist, &finfo, 0, NULL);
    10721073                        }
    1073                         if (rc == ERROR_FILE_NOT_FOUND)
     1074                        else if (rc == ERROR_FILE_NOT_FOUND)
    10741075                        {
    10751076                                // now try the upper path
    1076                                 char * p = ph->fsphStrChr(finfo.fname, '\\');
     1077                                char * p = ph->fsphStrRChr(finfo.fname, '\\');
    10771078                                if (p && p > finfo.fname)
    10781079                                {
    10791080                                        *p = 0;
    10801081                                        rc = smbwrp_getattr( &pRes->srv, pConn->cli, &finfo);
    1081                                         if (rc)
     1082                                        debuglocal(9,"NdpQueryPathInfo upper path in <%s>, rc = %d\n",  finfo.fname, rc);
     1083                                        if (rc == NO_ERROR)
    10821084                                        {       
    1083                                             debuglocal(9,"NdpQueryPathInfo upper path in <%s>, retry = %d\n",  finfo.fname, retry);
    1084                                             rc = rc ? ERROR_PATH_NOT_FOUND : ERROR_INVALID_PARAMETER;
     1085                                            rc = (finfo.attr & FILE_DIRECTORY) !=0 ?
     1086                                                ERROR_PATH_NOT_FOUND :
     1087                                                ERROR_INVALID_PARAMETER;
    10851088                                        }
     1089                                        else if (rc != ERROR_REM_NOT_LIST)
     1090                                        {
     1091                                              rc = ERROR_PATH_NOT_FOUND;
     1092                                        }
    10861093                                }
    10871094                        }
Note: See TracChangeset for help on using the changeset viewer.