search for: pif_relax

Displaying 5 results from an estimated 5 matches for "pif_relax".

2014 Jun 29
10
[PATCH 0/6] chain.c32 patches
This small set fixes few bugs, improves gpt handling (under buggy conditions) and implements strict flag with more fine grained control which should fix issues with sanity checks against disk sizes. If this set is allright I'd want to do what I mentioned in older discussion with Ady - backport missing patches from 6.x to 5.x and 4.x so all versions have up to date chain version. Michal
2012 Aug 01
0
chain module updates
...and modify. - com32/chain: make 'fixchs' and 'hide' options respect 'save' To make the behavior consistent with sector saving. ITOW, writing back is allowed only and only if save is set - which must be explicitly requested by the user. - com32/chain: implement relax flag (PIF_RELAX) This tones down sanity checks, which should allow operation in some corner cases (such as moving disks between different machines reporting different disk sizes, or paritally botched partition tables). - com32/chain: implement handling of non-standard hybrid GPT+MBR layouts This recognizes disk...
2013 Oct 18
0
[RFC/PATCH 1/3] Move partiter from com32/chain to com32/lib/syslinux
...sk_dos_part_entry *dp; - uint32_t end_log; - - dp = ((struct disk_dos_mbr *)iter->data)->table; - - if (!dp[0].ostype) - return 0; - - if (ost_is_ext(dp[0].ostype)) { - error("The 1st EBR entry must be data or empty."); - return -1; - } - - if (iter->flags & PIF_RELAX) - return 0; - - end_log = dp[0].start_lba + dp[0].length; - - if (!dp[0].start_lba || - !dp[0].length || - !sane(dp[0].start_lba, dp[0].length) || - end_log > iter->dos.nebr_siz) { - - error("Logical partition (in EBR) with invalid offset and/or length."); - return -1; - }...
2014 Jun 29
0
[PATCH 1/6] chain/partiter: fix and improve gpt handling in buggy cases
...disk_info *di, const struct disk_gpt_header *gpth, int flags) +{ + uint64_t gpt_loff; /* offset to GPT partition list in sectors */ + uint64_t gpt_lsiz; /* size of GPT partition list in bytes */ + uint64_t gpt_lcnt; /* size of GPT partition in sectors */ + + if (flags & PIF_RELAX) + return 0; + + gpt_loff = gpth->lba_table; + gpt_lsiz = (uint64_t)gpth->part_size * gpth->part_count; + gpt_lcnt = (gpt_lsiz + di->bps - 1) / di->bps; + + /* + * disk_read_sectors allows reading of max 255 sectors, so we use + * it as a sanity check base. EFI do...
2012 Nov 06
50
chain.c32 (and partiter) updates v2
This is a bit updated set of chain.c32 changes that simplifies a few things (and in partiter part), fixes few minor issues and adds a few new features. Details are in the following commits, below is the summary and pull details at the end. Shao - any chance to peek over them ? Most of those are relatively simple changes and well tested, though of course something might have slipped my attention.