Only allow setting 255 bytes for vendor extension TLV

The current code lets you set a 256 byte vend ext, but a TLV can only
hold 255 bytes.  This patch detects this condition, prints an error
and leaves the EEPROM unmodified.

Reviewed By: scotte

Testing Done:
Exercised the code on a switch with the following test cases:

1. Setting vendor extension with 255 bytes.  Passes OK.
2. Setting vendor extension with 256 bytes.  Error detected and reported.
3. Setting vendor extension with 257 bytes.  Error detected and reported.