▲ | zozbot234 4 days ago | ||||||||||||||||||||||||||||||||||
There's no "revelation" here, it's always been well known among experts that Go is not fully memory safe for concurrent code, same for previous versions of Swift. OP has simply spelled out the argument clearly and made it easier to understand for average developers. | |||||||||||||||||||||||||||||||||||
▲ | tptacek 4 days ago | parent [-] | ||||||||||||||||||||||||||||||||||
It's made what would be a valid point using misleading terminology and framing that suggests these are security issues, which they simply are not. "One could easily turn this example into a function that casts an integer to a pointer, and then cause arbitrary memory corruption." No, one couldn't! One has contrived a program that hardcodes precisely the condition one wants to achieve. In doing so, one hasn't even demonstrated even one of the two predicates for a memory corruption vulnerability (attacker control of the data, and attacker ability to place controlled data somewhere advantageous to the attacker). What the author is doing is demonstrating correctness advantages of Rust using inappropriate security framing. | |||||||||||||||||||||||||||||||||||
|