The evap o-ring causes that code a lot more often than gas caps, but there might not be any real problem. P0456 is a "two trip" code where the ECM doesn't light the MIL for the first instance, and without knowing when the pending code cropped up, it may have been there for a long time. I'd recommend erasing it and scanning the car periodically to see if it crops up again. If not, then it may have been a cap left loose once and the ECM simply hasn't seen a repeat.