From the looks of things, the candidate who's doing the cause the most good is Congresman Barney Frank:
Rep. Barney Frank Offers Legislation to Legalize Marijuana - US News and World Report

Of the two presidential candidates, Obama would be more likely pro-cannabis than McCain, but neither of them has really touched on the subject and they almost certainly won't. It's not a popular issue to be behind, sadly.