The only purpose for the multiplication operator is for multiplying the inter-byte timeout, and (later) multiplying baud-based byte times. A better way may be to just do those operations with regular multiplication and a uint64_t, and add the result as a timespec.