librados/asio: use boost::system::generic_category on Windows
librados uses "errno.h" error codes. On Windows,
boost::system::system_category refers to errors from winerror.h.
That being considered, we'll add a platform check and use
boost::system::generic_category on Windows. This ensures that
error code comparisons work as expected.
This issue was brought up by the following test assertion failure:
ft2.4: ceph_test_rados_api_asio.AsioRados.AsyncWriteCallbacktesttools.
testresult.real._StringException: details: {{{
/ceph/src/test/librados/asio.cc:148
Expected equality of these values:
boost::system::errc::read_only_file_system
Which is: 30
ec
Which is: system:30
}}}