Pushing is allowed, pulling is not. As long as players from both teams are engaged against each other anyone can push anyone as they please.
It was borderline as far as forward momentum being stopped imo. It could have been whistled dead there and looked fine as much letting it play out seemed fine. Just a millisecond decision there the ref has to make and I'm fine with it. Overall, I thought the officiating was solid for the first time this season. Neither team really got screwed by a blatant bad call.