You cannot shirk segments in undo tablespace. Fastest and safest way to accomplish this task is to create new undo tablespace with datafile size limit set as required.

Switch database to use new undo tablespace. Drop old undo tablespace if ok to do.

See Oracle9i DBA guide for details on managing undo tablespace in 9i.

Hope this helps.