I know you can do it with cingular. It's called "Call screen, Call block, and Privacy manager" All three programs work in pretty much the same fashion. Call screen makes anyone with an unavailable number have to identify themselves to a message center and thier recordig comes up when you answer the phone... you don't know them, you hang up. Call block, simply put, blocks calls. You get an annoying call from someone you don't know, prank call, ex gf, whatever... you hit *60, and that number can no longer call you. You don't even have to know the number. Privacy manager... doesn't allow any blocked, private, or unavailable numbers to call you.
(can you tell I used to work for them? hehe)