diff options
| author | Nathan Scott <nathans@sgi.com> | 2006-01-15 23:54:05 -0500 | 
|---|---|---|
| committer | Nathan Scott <nathans@sgi.com> | 2006-01-15 23:54:05 -0500 | 
| commit | 54245702ab63a9a0b1ccf78bc37b57e778bb3bcc (patch) | |
| tree | 4ff4feac3de44fae6bc7bad062454d475c29570f | |
| parent | 0238cb4e7583c521bb3538060f98a73e65f61324 (diff) | |
[XFS] Fix symlink creation too, with respect to initialising SELinux
context.
SGI-PV: 946762
SGI-Modid: xfs-linux-melb:xfs-kern:24983a
Signed-off-by: Nathan Scott <nathans@sgi.com>
| -rw-r--r-- | fs/xfs/linux-2.6/xfs_iops.c | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/fs/xfs/linux-2.6/xfs_iops.c b/fs/xfs/linux-2.6/xfs_iops.c index 4bd3d03b23ed..521bf3834b43 100644 --- a/fs/xfs/linux-2.6/xfs_iops.c +++ b/fs/xfs/linux-2.6/xfs_iops.c | |||
| @@ -474,11 +474,14 @@ linvfs_symlink( | |||
| 474 | 474 | ||
| 475 | error = 0; | 475 | error = 0; | 
| 476 | VOP_SYMLINK(dvp, dentry, &va, (char *)symname, &cvp, NULL, error); | 476 | VOP_SYMLINK(dvp, dentry, &va, (char *)symname, &cvp, NULL, error); | 
| 477 | if (!error && cvp) { | 477 | if (likely(!error && cvp)) { | 
| 478 | ip = LINVFS_GET_IP(cvp); | 478 | error = linvfs_init_security(cvp, dir); | 
| 479 | d_instantiate(dentry, ip); | 479 | if (likely(!error)) { | 
| 480 | validate_fields(dir); | 480 | ip = LINVFS_GET_IP(cvp); | 
| 481 | validate_fields(ip); /* size needs update */ | 481 | d_instantiate(dentry, ip); | 
| 482 | validate_fields(dir); | ||
| 483 | validate_fields(ip); | ||
| 484 | } | ||
| 482 | } | 485 | } | 
| 483 | return -error; | 486 | return -error; | 
| 484 | } | 487 | } | 
