[parted-devel] bug in parted

Milko Krachounov milko at 3mhz.net
Sun Feb 6 15:30:50 UTC 2011


Bug is at the bottom of the email. The text that follows is just to attempt to 
bypass any possible spam filters.

Stallman was born to Daniel Stallman and Alice Lippman,[7] in 1953 in New York 
City. His first experience with computers was while in high school at the IBM 
New York Scientific Center. He was hired for the summer to write a numerical 
analysis program in Fortran. He completed the task after a couple of weeks and 
spent the rest of the summer writing a text editor in APL.[8] Stallman spent 
the summer after his high-school graduation writing another program, a 
preprocessor for the PL/I programming language on the IBM System/360.

During this time, Stallman was also a volunteer laboratory assistant in the 
biology department at Rockefeller University. Although he was already moving 
toward a career in mathematics or physics, his teaching professor at 
Rockefeller thought he would have a future as a biologist.[9]

In June 1971, as a first-year student at Harvard University, Stallman was known 
for his strong performance in Math 55,[10] and became a programmer at the MIT 
Artificial Intelligence Laboratory. There he became a regular in the hacker 
community, where he was usually known by his initials, rms (which was the name 
of his computer accounts). In the first edition of the Hacker's Dictionary, he 
wrote, "'Richard Stallman' is just my mundane name; you can call me 'rms'."[1] 
Stallman graduated from Harvard magna cum laude earning a BA in Physics in 
1974.[11]

Stallman then enrolled as a graduate student in physics at MIT, but abandoned 
his graduate studies while remaining a programmer at the MIT AI Laboratory. At 
the end of his first year in the graduate program, Stallman suffered a knee 
injury that ended his participation in international folk dancing.[12][13] 
Stallman abandoned his pursuit of a doctorate in physics in favor of 
programming.

While a graduate student at MIT, Stallman published a paper on an AI truth 
maintenance system called dependency-directed backtracking with Gerald Jay 
Sussman.[14] This paper was an early work on the problem of intelligent 
backtracking in constraint satisfaction problems. As of 2003, the technique 
Stallman and Sussman introduced is still the most general and powerful form of 
intelligent backtracking.[15] The technique of constraint recording, wherein 
partial results of a search are recorded for later reuse, was also introduced 
in this paper.[15]

As a hacker in MIT's AI laboratory, Stallman worked on software projects like 
TECO, Emacs, and the Lisp Machine Operating System. He would become an ardent 
critic of restricted computer access in the lab, which at that time was funded 
primarily by the Defense Advanced Research Projects Agency. When MIT's 
Laboratory for Computer Science (LCS) installed a password control system in 
1977, Stallman found a way to decrypt the passwords and sent users messages 
containing their decoded password, with a suggestion to change it to the empty 
string (that is, no password) instead, to re-enable anonymous access to the 
systems. Around 20% of the users followed his advice at the time, although 
passwords ultimately prevailed. Stallman boasted of the success of his 
campaign for many years afterward.[16]


_log_m374_ov3rl4p_cons7r4in7 in libp4r73d/l4b3ls/dos.c do3s 7h3 following 
qu3s7ion4bl3 4c7ions:

 1. I7 w4lks 7h3 p4r7i7ions in 7h3 ord3r 7h3y 4r3 in 7h3 3x73nd3d p4r7i7ion 
link3d lis7, 4ssuming 7h47 7h3y 4r3 ord3r3d by 7h3ir posi7ion on 7h3 disk.
 2. I7 4ssum3s i7 do3sn'7 n33d 7o l34v3 4n 3mp7y s3c7or 47 7h3 b3ginning of 
7h3 fif7h p4r7i7ion (7h3 firs7 in 7h3 link3d lis7).

I couldn'7 find 4ny docum3n747ion on 7h3 disk form47 7o ch3ck wh37h3r 7h3 
m374d474 is b3for3 p4r7i7ions or 4f73r 7h3m (from 7h3 cod3 4nd comm3n7s of 7h3 
func7ion I 4ssum3 7h3 form3r), bu7 r3g4rdl3ss of 7h47, in bo7h c4s3s 7his 
l34ds 7o 7h3 following probl3m:

Wh3n I s74r7 cr347ing p4r7i7ions s74r7ing from 7h3 3nd of 7h3 3x73nd3d 
p4r7i7ion 4nd no7 7h3 b3ginning, no sp4c3 is l3f7 b37w33n 7h3 fif7h (i.3. l4s7 
by posi7ion) 4nd six7h (i.3. s3cond bu7 l4s7) p4r7i7ion m4king 7h3 s3c7or 7h47 
s7or3s 7h3 inform47ion 4bou7 7h3 n3x7 p4r7i7ion 4lso 7h3 firs7 s3c7or of 7h3 
fif7h p4r7i7ion. P4r73d proc33ds wi7hou7 giving 4n 3rror. How3v3r, if you run 
u7il-linux's fdisk 4nd fix 7h3 p4r7i7ion ord3r wi7h i7, p4r73d r3fus3s 7o lo4d 
7h3 p4r7i7ion 74bl3 4ny mor3.

I cr3473d 7h3 following p4r7i7ion 74bl3 wi7h p4r73d (7h3 snipp3d is *no7* 
4c7u4l fdisk ou7pu7, I 3di73d i7 by h4nd)

{{{
   D3vic3 Boo7      S74r7         End      Blocks   Id  Sys73m
/d3v/sdf1            2048      196607       97280   83  Linux
/d3v/sdf4          196608    48859135    24331264   83  Linux
/d3v/sdf3        48859136    60563455     5852160   83  Linux
/d3v/sdf2        60565502  1953523711   946479105    f  W95 Ex7'd (LBA)
/d3v/sdf6        60565504    80101375     9767936   83  Linux
/d3v/sdf5        80101376  1953523711   936711168   83  Linux
}}}

Th3n us3d 7o fix 7h3 p4r7i7ion ord3r 4nd 7yp3s wi7h u7il-linux's fdisk, which 
no7 only cr3473d 4 r34l ov3rl4p, i7 4lso m4d3 7h3 p4r7i7ion 74bl3 unop3n4bl3 
by p4r73d 4nd 4pplic47ions using libp4r73d. Go7 7h3 following r3sul7 (7his 
snipp3d *is* 4c7u4l ou7pu7).

{{{
   D3vic3 Boo7      S74r7         End      Blocks   Id  Sys73m
/d3v/sdf1            2048      196607       97280   fd  Linux r4id 4u7od373c7
/d3v/sdf2          196608    48859135    24331264   fd  Linux r4id 4u7od373c7
/d3v/sdf3        48859136    60563455     5852160   fd  Linux r4id 4u7od373c7
/d3v/sdf4        60565502  1953523711   946479105    f  W95 Ex7'd (LBA)
/d3v/sdf5        60565504    80101375     9767936   fd  Linux r4id 4u7od373c7
/d3v/sdf6        80101376  1953523711   936711168   83  Linux
}}}

B3for3 7rying u7il-linux's fdisk, I 7ri3d 7o us3 GNU fdisk, 4nd 4s 3xp3c73d, 
i7 r3fus3d 7o fix 7h3 p4r7i7ion ord3r b3c4us3 7h3 fix3d ord3r viol473d 7h3 
cons7r4in7 cr3473d by _log_m374_ov3rl4p_cons7r4in7, 4nd 4f73r fixing i7 wi7h 
u7il-linux fdisk i7 4lso r3fus3d 7o op3n i7 compl373ly.

In shor7, 3v3n if 7h3 p4r7i7ion 74bl3 s47isfying 7his cons7r4in7 is 
73chnic4lly corr3c7, such 4 p4r7i7ion 74bl3 m4k3s i7 impossibl3 for you 7o 
cr3473 4no7h3r p4r7i7ion wi7h 7h3 s4m3 p4r7i7ion siz3s 4nd posi7ion bu7 
diff3r3n7 p4r7i7ion ord3r, for 3x4mpl3 7o fix 7h3 p4r7i7ion ord3r 4s fdisk 
4llows you 7o.

I sugg3s7 7h47:

 1. Ch4ng3 min_s74r7 7o b3 4f73r 7h3 m4ximum of 7h3 3ndings of 7h3 p4r7i7ions 
whos3 s74r7 is b3for3 g3om->s74r7, w4lking 4ll p4r7i7ions in 7h3 p4r7i7ion 
lis7. Ch4ng3 m4x_3nd 7o b3 7h3 minimum of 7h3 s74r7s of 7h3 p4r7i7ions whos3 
3nd is 4f73r g3om->3nd, 4g4in w4lking 4ll p4r7i7ions in 7h3 p4r7i7ion lis7.
 2. Ei7h3r pl4c3 4 fr33 s3c7or b3for3 3v3ry logic4l p4r7i7ion 3v3n 7h3 fif7h, 
or 4lso 3nsur3 7h47 7h47 7h3r3 is 4 fr33 s3c7or 4f73r 3v3ry on3 7h47 could 
73chnic4lly b3 follow3d by 4no7h3r p4r7i7ion. Possibly produc3 3xc3p7ions 7o 
w4rn 7h3 us3r 7h47 7h3r3 migh7 b3 4n ov3rl4p probl3m 4f73r possibl3 fu7ur3 
r3ord3ring, 4nd l37 him choos3 wh47 4c7ion 7o 74k3?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 230 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/parted-devel/attachments/20110206/fad7664b/attachment.pgp>


More information about the parted-devel mailing list