I think they need to leave those alone. They are done deals, they have played for a year with the contracts and for now, you'll have to live with it. But starting now, make it a known issue that front loaded contracts will ALWAYS be reviewed by the league, and start getting people away from doing that sort of crap. Everyone knows this is just a way to get the cap number they want. No one is dumb, and GM's can't sit there and say "oh yeah, when player X is 42 years old, I have no problem having a $6M cap hit and YES he will still be playing when he is that old."
In this case, I do side with the league, because I think these contracts can do more harm in the long run of things. Look at the Islanders who are hurt by the signings of two players who are still on their books. What if Kovy gets traded from the devils. In hurts the Devils by having his contract on their books, and it makes him almost impossible to move because he has such a long term contract.
In some ways, I think maybe they should start using a franchise tag, and with said tag comes the ability to offer longer deals. BUT it can only be on one player, and as long as that player is on your team, you cannot use the tag again. If the Penguins want to offer Crosby a 15yr contract to stay a Penguin for the rest of his life, I see little problem with it as long as they don't front end load it and slap the franchise tag on him. That means for 15 years, they cannot use the tag again. That's just a quick brainstorm, and it does have flaws, but I'm just sick of seeing 10-15 yr deals for guys who will be 40+ years old when they end their contract.
I read on the TSN comments some guy saying "I bet you thousands of players would play past 40 years old if they were offered a contract." Well sure they would, but Kovy at 42 years old is not going to be the same as Kovy at 27 years old. Wonder if that guy will pay 42yr old kovy $6M.