summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Client/Tools/POSIX/Hardlink.py
blob: 896ca5f49455669c802165b1ec07b87c095cfaec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
""" Handle <Path type="hardlink" ...> entries """

import os
from Bcfg2.Client.Tools.POSIX.base import POSIXLinkTool


class POSIXHardlink(POSIXLinkTool):
    """ Handle <Path type="hardlink" ...> entries """
    __linktype__ = "hardlink"

    def _verify(self, entry):
        return os.path.samefile(entry.get('name'), entry.get('to'))

    def _link(self, entry):
        ## TODO: set permissions
        return os.link(entry.get('to'), entry.get('name'))