- Feature Articles
- CodeSOD
- Error'd
-
Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
is_truth_dead? frist: file_not_found
Edit Admin
execv() is part of POSIX, and not part of C.
Admin
Well, I did that in a few weeks including rewriting it at least one time. It's not that complicated even without bison and yak.
Edit Admin
If the school didn't understand the importance of upgrading, I suppose that Jared B. could always have just mapped out the school's IP space, written a program to force the upgrade to the new version, and then executed that over the insecure endpoint. Though on Windows, that's tricky because you can't delete/replace the EXE file of a currently running program or any other files in use by that, so you'd need to use some trick like the
MoveFileEx()function with theMOVEFILE_DELAY_UNTIL_REBOOTflag and then force a reboot. Also this would be legally dubious.As Steve_The_Cynic mentioned,
execv()is not part of ANSI C and doesn't exist on Windows. I suppose one could implementexecv()usingCreateProcess()andExitProcess()without too much trouble; but you'd have a lot more trouble implementingfork()on Windows, which doesn't have any native equivalent. Take a look at how Cygwin implementedfork()on Windows, it's absolutely disgusting; and if you're unlucky with DLL load addresses, it can just fail randomly too.Admin
When I read "The opposite of meritocracy is ..." I mentally completed "... politcian", where obedience to the shouter at the top is the decisive factor.