Zakazani hardlinku - jak?

Leos Bitto bitto na kolej.mff.cuni.cz
Středa Únor 19 09:50:50 CET 1997


> Hi,
> 
> > Hmmm uz se zacinam opakovat, ale: Tak jak to teda udelat?
> 
>    Melo by stacit oeditovat fs/namei.c, funkci sys_link()
> stejnym zpusobem jako u zminovaneho symlink patche.
>
>
>							Martin

Hmm taky jsem se tam mohl podivat nez se budu vyptavat v konferenci...

Nakonec jsem to udelal takhle:

--- namei.c.orig        Sat Nov 30 11:23:00 1996
+++ namei.c     Tue Feb 18 21:44:42 1997
@@ -802,6 +802,11 @@
		iput(oldinode);
		return -EPERM;
	}
+	if (current->fsuid && inode->i_uid != current->fsuid) {
+		iput(dir);
+		iput(oldinode);
+	return -EPERM;
+	}
	dir->i_count++;
	if (dir->i_sb && dir->i_sb->dq_op)
		dir->i_sb->dq_op->initialize(dir, -1);

(na zacatku radku jsou tabulatory, mozna se prepisou na mezery tak si je
zase nahradte zpatky)

Bohuzel ted zrovna nemam moznost to zkusit zkompilovat a overit. Ale verim
ze by to melo delat to co po tom chci, tj. vytvoreni hardlinku se povoli
pouze pokud jste root nebo vlastnite puvodni soubor.

Pripominky vitam.



                                                         Leos Bitto
                                                  <bitto na kolej.mff.cuni.cz>



Další informace o konferenci Linux