Hi Hendrik, On Fri, Jun 17, 2011 at 1:19 PM, Hendrik Sattler <post@xxxxxxxxxxxxxxxxxx> wrote: > Zitat von Luiz Augusto von Dentz <luiz.dentz@xxxxxxxxx>: >> >> +static char *ftp_build_filename(struct ftp_session *ftp, const char >> *destname) >> +{ >> + char *filename; >> + >> + /* DestName can either be relative or absolute (FTP style) */ >> + if (g_path_is_absolute(destname)) >> + filename = g_build_filename(destname, NULL); >> + else >> + filename = g_build_filename(ftp->folder, destname, NULL); >> + >> + /* Check if destination is inside root path */ >> + if (g_str_has_prefix(filename, ftp->folder)) >> + return filename; >> + >> + g_free(filename); >> + >> + return NULL; >> +} > > Except that this interprets the destination header in a wrong way: > Absolute destination means that it is based on the path that you export to > the _client_ as root, not the local filesystem root. This one is actually a valid point, I will fix it. > You should also catch stuff like the UNC path stuff and drive letter > prefixes. No need to support all the sick stuff :-/ If g_build_filename doesn't care I don't see why we should care. -- Luiz Augusto von Dentz -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html