Changeset 528 for trunk/client/src
- Timestamp:
- Jan 24, 2011, 12:04:13 PM (15 years ago)
- Location:
- trunk/client/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/client/src/Config.km_
r521 r528 10 10 # adjust also the date please 11 11 # 12 VERSION = 1.6.012 VERSION = 2.1.x 13 13 BUILD = beta-date 14 14 SAMBA = ../../samba-33 -
trunk/client/src/ndpsmb.c
r521 r528 966 966 } 967 967 } 968 else969 {968 969 if (rc == NO_ERROR) { 970 970 finfo.easize = -1; 971 971 getfindinfoL(pConn, plist, &finfo, 0, NULL); 972 972 } 973 if (rc == ERROR_FILE_NOT_FOUND)973 else if (rc == ERROR_FILE_NOT_FOUND) 974 974 { 975 975 // now try the upper path 976 char * p = ph->fsphStr Chr(finfo.fname, '\\');976 char * p = ph->fsphStrRChr(finfo.fname, '\\'); 977 977 if (p && p > finfo.fname) 978 978 { 979 979 *p = 0; 980 980 rc = smbwrp_getattr( &pRes->srv, pConn->cli, &finfo); 981 if (rc) 981 debuglocal(9,"NdpQueryPathInfo upper path in <%s>, rc = %d\n", finfo.fname, rc); 982 if (rc == NO_ERROR) 982 983 { 983 debuglocal(9,"NdpQueryPathInfo upper path in <%s>, retry = %d\n", finfo.fname, retry); 984 rc = rc ? ERROR_PATH_NOT_FOUND : ERROR_INVALID_PARAMETER; 984 rc = (finfo.attr & FILE_DIRECTORY) !=0 ? 985 ERROR_PATH_NOT_FOUND : 986 ERROR_INVALID_PARAMETER; 987 } 988 else if (rc != ERROR_REM_NOT_LIST) 989 { 990 rc = ERROR_PATH_NOT_FOUND; 985 991 } 986 992 } -
trunk/client/src/smbwrp.c
r521 r528 174 174 175 175 if (!lp_load(get_dyn_CONFIGFILE(),true,false,false,true)) { 176 debuglocal(0,("The initial smb.conf is missing, please reinstall the plugin!")); 177 } 178 176 debuglocal(0,("The initial smb.conf is missing, defaults are used!\n")); 177 } 179 178 180 179 load_interfaces(); … … 959 958 if (cli->capabilities & CAP_NT_SMBS && !(cli->capabilities & CAP_NOPATHINFO2)) 960 959 { 961 int r c = os2cli_errno(cli);960 int ret = cli_errno(cli); 962 961 // cli_qpathinfo* reports EINVAL when path of given file not exists 963 962 // thus there is no real situation when EINVAL should be returned to 964 963 // client at this point, we just replace it to ENOTDIR 965 if (r c== EINVAL)966 { 967 r c = maperror(ENOTDIR);968 } 969 return rc;964 if (ret == EINVAL) 965 { 966 ret = ENOTDIR; 967 } 968 return maperror(ret); 970 969 } 971 970 … … 1031 1030 { 1032 1031 filelist_state * st = (filelist_state *)state; 1033 char fullname[ _MAX_PATH] ;1032 char fullname[ _MAX_PATH] = {0}; 1034 1033 debuglocal(8,"adding <%s> %d %d %d\n", finfo->fname, sizeof(st->finfo), st->datalen, sizeof(st->finfo.fname)); 1035 1034 memcpy(&st->finfo, finfo, sizeof(st->finfo)); … … 1099 1098 ****************************************************************************/ 1100 1099 // YD from libsmb\clilist.c 1101 // @todo who frees fname, as clistr_pull_talloc allocs it1102 1100 static size_t _os2_interpret_long_filename(TALLOC_CTX *ctx, struct cli_state *cli, 1103 1101 int level,const char *p, const char *pdata_end, smbwrp_fileinfo *finfo, … … 1249 1247 } 1250 1248 strncpy(finfo->fname, fname, sizeof(finfo->fname) -1); 1249 1251 1250 /* To be robust in the face of unicode conversion failures 1252 1251 we need to copy the raw bytes of the last name seen here.
Note:
See TracChangeset
for help on using the changeset viewer.