]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
Merge branch 'maint' into next
authorTheodore Ts'o <tytso@mit.edu>
Sat, 3 Mar 2018 21:39:32 +0000 (16:39 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 3 Mar 2018 21:39:32 +0000 (16:39 -0500)
1  2 
e2fsck/pass1.c
lib/ext2fs/inline_data.c
lib/ext2fs/symlink.c
tests/f_create_symlinks/expect

diff --cc e2fsck/pass1.c
index 5015d9382c8b9a460f476aea709c999bd0a1445d,975f3f10624ec21741693188e9ced04a3a7b5c7e..723acf099769f4e2eb57c6a0e8823fd5242b697f
@@@ -253,8 -243,36 +253,8 @@@ int e2fsck_pass1_check_symlink(ext2_fil
                } else {
                        len = strnlen(buf, fs->blocksize);
                }
-               if (len == fs->blocksize)
+               if (len >= fs->blocksize)
                        return 0;
 -      } else if (inode->i_flags & EXT4_INLINE_DATA_FL) {
 -              char *inline_buf = NULL;
 -              size_t inline_sz = 0;
 -
 -              if (ext2fs_inline_data_size(fs, ino, &inline_sz))
 -                      return 0;
 -              if (inode->i_size != inline_sz)
 -                      return 0;
 -              if (ext2fs_get_mem(inline_sz + 1, &inline_buf))
 -                      return 0;
 -              i = 0;
 -              if (ext2fs_inline_data_get(fs, ino, inode, inline_buf, NULL))
 -                      goto exit_inline;
 -              inline_buf[inline_sz] = 0;
 -              len = strnlen(inline_buf, inline_sz);
 -              if (len != inline_sz)
 -                      goto exit_inline;
 -              i = 1;
 -exit_inline:
 -              ext2fs_free_mem(&inline_buf);
 -              return i;
 -      } else {
 -              if (inode->i_size >= sizeof(inode->i_block))
 -                      return 0;
 -
 -              len = strnlen((char *)inode->i_block, sizeof(inode->i_block));
 -              if (len == sizeof(inode->i_block))
 -                      return 0;
        }
        if (len != inode->i_size)
                if ((inode->i_flags & EXT4_ENCRYPT_FL) == 0)
Simple merge
Simple merge
index 44093855059d52e6139564ec15d39a9f233eda06,71f0c62991067b484667f14b16b0fb48f5ffc6e9..3033f8aac44ff2d91562b3caa9d8a50fe940fef7
@@@ -19,38 -20,49 +20,49 @@@ symlink: Invalid argument passed to ext
  debugfs -R "stat /l_30" test.img
  Inode: 12   Type: symlink    Mode:  0777   Flags: 0x0
  Generation: 0    Version: 0x00000000:00000000
- User:     0   Group:     0   Project:     0   Size: 31
+ User:     0   Group:     0   Project:     0   Size: 30
 -File ACL: 0    Directory ACL: 0
 +File ACL: 0
  Links: 1   Blockcount: 0
  Fragment:  Address: 0    Number: 0    Size: 0
  Size of extra inode fields: 32
- Fast link dest: "/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
- debugfs -R "stat /l_70" test.img
+ Fast link dest: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+ debugfs -R "stat /l_60" test.img
  Inode: 13   Type: symlink    Mode:  0777   Flags: 0x10000000
  Generation: 0    Version: 0x00000000:00000000
- User:     0   Group:     0   Project:     0   Size: 71
+ User:     0   Group:     0   Project:     0   Size: 60
 -File ACL: 0    Directory ACL: 0
++File ACL: 0
+ Links: 1   Blockcount: 0
+ Fragment:  Address: 0    Number: 0    Size: 0
+ Size of extra inode fields: 32
+ Extended attributes:
+   system.data (0)
+ Fast link dest: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+ debugfs -R "stat /l_70" test.img
+ Inode: 14   Type: symlink    Mode:  0777   Flags: 0x10000000
+ Generation: 0    Version: 0x00000000:00000000
+ User:     0   Group:     0   Project:     0   Size: 70
 -File ACL: 0    Directory ACL: 0
 +File ACL: 0
  Links: 1   Blockcount: 0
  Fragment:  Address: 0    Number: 0    Size: 0
  Size of extra inode fields: 32
  Extended attributes:
-   system.data (11)
- Fast link dest: "/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
+   system.data (10)
+ Fast link dest: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  debugfs -R "stat /l_500" test.img
- Inode: 14   Type: symlink    Mode:  0777   Flags: 0x80000
+ Inode: 15   Type: symlink    Mode:  0777   Flags: 0x80000
  Generation: 0    Version: 0x00000000:00000000
- User:     0   Group:     0   Project:     0   Size: 501
+ User:     0   Group:     0   Project:     0   Size: 500
 -File ACL: 0    Directory ACL: 0
 +File ACL: 0
  Links: 1   Blockcount: 2
  Fragment:  Address: 0    Number: 0    Size: 0
  Size of extra inode fields: 32
  EXTENTS:
  (0):153
  debugfs -R "stat /l_1023" test.img
- Inode: 15   Type: symlink    Mode:  0777   Flags: 0x80000
+ Inode: 16   Type: symlink    Mode:  0777   Flags: 0x80000
  Generation: 0    Version: 0x00000000:00000000
- User:     0   Group:     0   Project:     0   Size: 1024
+ User:     0   Group:     0   Project:     0   Size: 1023
 -File ACL: 0    Directory ACL: 0
 +File ACL: 0
  Links: 1   Blockcount: 2
  Fragment:  Address: 0    Number: 0    Size: 0
  Size of extra inode fields: 32