Пример #1
0
    def __init__(self,
                 file=None,
                 mode='rb',
                 cryptoType=-1,
                 cryptoKey=-1,
                 cryptoCounter=-1):
        self.header = None
        self.signature = None
        self.magic = None
        self.secureOffset = None
        self.backupOffset = None
        self.titleKekIndex = None
        self.gamecardSize = None
        self.gamecardHeaderVersion = None
        self.gamecardFlags = None
        self.packageId = None
        self.validDataEndOffset = None
        self.gamecardInfo = None

        self.hfs0Offset = None
        self.hfs0HeaderSize = None
        self.hfs0HeaderHash = None
        self.hfs0InitialDataHash = None
        self.secureMode = None

        self.titleKeyFlag = None
        self.keyFlag = None
        self.normalAreaEndOffset = None

        self.gamecardInfo = None
        self.gamecardCert = None
        self.hfs0 = None

        File.__init__(self, file, mode, cryptoType, cryptoKey, cryptoCounter)
        IndexedFile.__init__(self, file, mode, cryptoType, cryptoKey,
                             cryptoCounter)
Пример #2
0
def factory(name):
    if name.endswith('.xci'):
        f = Xci()
    elif name.endswith('.xcz'):
        f = Xci()
    elif name.endswith('.nsp'):
        f = Nsp()
    elif name.endswith('.nsz'):
        f = Nsp()
    elif name.endswith('.nsx'):
        f = Nsp()
    elif name.endswith('.nca'):
        f = Nca()
    elif name.endswith('.ncz'):
        f = File()
    elif name.endswith('.nacp'):
        f = Nacp()
    elif name.endswith('.tik'):
        f = Ticket()
    elif name.endswith('.hfs0'):
        f = Hfs0()
    else:
        f = File()
    return f
Пример #3
0
def factory(name, file=None, mode='rb'):
    ext = name.split('.')[-1]
    if ext == 'xci' or ext == 'xcz':
        f = Xci(file, mode)
    elif ext == 'nsp' or ext == 'nsz' or ext == 'nsx':
        f = Nsp(file, mode)
    elif ext == 'nca' or ext == 'ncz':
        f = Nca(file, mode)
    elif ext == 'nacp':
        f = Nacp(file, mode)
    elif ext == 'tik':
        f = Ticket(file, mode)
    elif ext == 'cnmt':
        f = Cnmt(file, mode)
    else:
        f = File(file, mode)

    return f
Пример #4
0
def factory(name):
    if name.endswith('.xci'):
        f = Xci()
    elif name.endswith('.nsp'):
        f = Nsp()
    elif name.endswith('.nsx'):
        f = Nsp()
    elif name.endswith('.nca'):
        f = Nca()
    elif name.endswith('.nacp'):
        f = Nacp()
    elif name.endswith('.tik'):
        f = Ticket()
    elif name.endswith('.cnmt'):
        f = Cnmt()
    else:
        f = File()

    return f