tbaeder / rpms / vsftpd

Forked from rpms/vsftpd 3 years ago
Clone
Jiri Skala 217ef8d
diff -up vsftpd-2.3.2/ls.c.tmp vsftpd-2.3.2/ls.c
Jiri Skala 217ef8d
--- vsftpd-2.3.2/ls.c.tmp	2010-08-20 13:18:54.397583558 +0200
Jiri Skala 217ef8d
+++ vsftpd-2.3.2/ls.c	2010-08-20 13:14:59.047831385 +0200
Jiri Skala 217ef8d
@@ -305,6 +305,20 @@ vsf_filename_passes_filter(const struct 
03c7b6d
       {
03c7b6d
         goto out;
03c7b6d
       }
03c7b6d
+      if (!must_match_at_current_pos && last_token == 0)
Jiri Skala 217ef8d
+      {
03c7b6d
+        struct mystr last_str = INIT_MYSTR;
03c7b6d
+        str_mid_to_end(&name_remain_str, &last_str,
03c7b6d
+          str_getlen(&name_remain_str) - str_getlen(&s_match_needed_str));
03c7b6d
+        locate_result = str_locate_str(&last_str, &s_match_needed_str);
03c7b6d
+        str_free(&last_str);
Jiri Skala 217ef8d
+
03c7b6d
+        if (locate_result.found)
Jiri Skala 217ef8d
+        {
03c7b6d
+          ret = 1;
Jiri Skala 217ef8d
+        }
03c7b6d
+        goto out;
Jiri Skala 217ef8d
+      }
03c7b6d
       /* Chop matched string out of remainder */
03c7b6d
       str_mid_to_end(&name_remain_str, &temp_str,
Jiri Skala 217ef8d
                      indexx + str_getlen(&s_match_needed_str));