WOLErrorUtil.cpp 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. /*
  2. ** Command & Conquer Renegade(tm)
  3. ** Copyright 2025 Electronic Arts Inc.
  4. **
  5. ** This program is free software: you can redistribute it and/or modify
  6. ** it under the terms of the GNU General Public License as published by
  7. ** the Free Software Foundation, either version 3 of the License, or
  8. ** (at your option) any later version.
  9. **
  10. ** This program is distributed in the hope that it will be useful,
  11. ** but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. ** GNU General Public License for more details.
  14. **
  15. ** You should have received a copy of the GNU General Public License
  16. ** along with this program. If not, see <http://www.gnu.org/licenses/>.
  17. */
  18. /******************************************************************************
  19. *
  20. * FILE
  21. * $Archive: /Commando/Code/WWOnline/WOLErrorUtil.cpp $
  22. *
  23. * DESCRIPTION
  24. *
  25. * PROGRAMMER
  26. * $Author: Denzil_l $
  27. *
  28. * VERSION INFO
  29. * $Revision: 6 $
  30. * $Modtime: 1/11/02 2:23p $
  31. *
  32. ******************************************************************************/
  33. #include "WOLErrorUtil.h"
  34. #include <WOLAPI\ChatDefs.h>
  35. #include <WOLAPI\NetUtilDefs.h>
  36. #include <WOLAPI\DownloadDefs.h>
  37. namespace WWOnline {
  38. #define ADD_CASE(exp, msg) case exp: return msg;
  39. /******************************************************************************
  40. *
  41. * NAME
  42. *
  43. * DESCRIPTION
  44. *
  45. * INPUTS
  46. *
  47. * RESULT
  48. *
  49. ******************************************************************************/
  50. const char* const GetChatErrorString(HRESULT hr)
  51. {
  52. switch (hr)
  53. {
  54. ADD_CASE(CHAT_E_NICKINUSE, "WOL_NICKINUSE");
  55. ADD_CASE(CHAT_E_BADPASS, "WOL_BADPASSWORD");
  56. ADD_CASE(CHAT_E_NONESUCH, "WOL_NONESUCH");
  57. ADD_CASE(CHAT_E_CON_NETDOWN, "WOL_NETDOWN");
  58. ADD_CASE(CHAT_E_CON_LOOKUP_FAILED, "WOL_FAILEDLOOKUP");
  59. ADD_CASE(CHAT_E_CON_ERROR, "WOL_CONNECTERROR");
  60. ADD_CASE(CHAT_E_TIMEOUT, "WOL_TIMEDOUT");
  61. ADD_CASE(CHAT_E_MUSTPATCH, "WOL_PATCHREQUIRED");
  62. ADD_CASE(CHAT_E_STATUSERROR, "WOL_STATUSERROR");
  63. ADD_CASE(CHAT_E_UNKNOWNRESPONSE, "WOL_UNKNOWNERROR");
  64. ADD_CASE(CHAT_E_CHANNELFULL, "WOL_CHANNELFULL");
  65. ADD_CASE(CHAT_E_CHANNELEXISTS, "WOL_CHANNELCREATEERROR");
  66. ADD_CASE(CHAT_E_CHANNELDOESNOTEXIST, "WOL_CHANNELNOTFOUND");
  67. ADD_CASE(CHAT_E_BADCHANNELPASSWORD, "WOL_BADPASSWORD");
  68. ADD_CASE(CHAT_E_BANNED, "WOL_BANNED");
  69. ADD_CASE(CHAT_E_NOT_OPER, "WOL_NOTCHANOP");
  70. ADD_CASE(CHAT_E_DISABLED, "WOL_ACCOUNTDISABLED");
  71. ADD_CASE(CHAT_E_SERIALBANNED, "WOL_SERIALBANNED");
  72. ADD_CASE(CHAT_E_SERIALDUP, "WOL_SERIALDUPLICATE");
  73. ADD_CASE(CHAT_E_SERIALUNKNOWN, "WOL_SERIALUNKNOWN");
  74. ADD_CASE(CHAT_E_SKUSERIALMISMATCH, "WOL_SERIALSKUMISMATCH");
  75. ADD_CASE(CHAT_E_NOTCONNECTED, "WOL_NOTCONNECTED");
  76. ADD_CASE(CHAT_E_NOCHANNEL, "WOL_CHANNELNOTFOUND");
  77. ADD_CASE(CHAT_E_NOTIMPLEMENTED, "WOL_NOTIMPLEMENTED");
  78. ADD_CASE(CHAT_E_PENDINGREQUEST, "WOL_PENDINGREQUEST");
  79. ADD_CASE(CHAT_E_PARAMERROR, "WOL_PARAMERROR");
  80. ADD_CASE(CHAT_E_LEAVECHANNEL, "WOL_CHANNELLEAVEERROR");
  81. ADD_CASE(CHAT_E_JOINCHANNEL, "WOL_CHANNELJOINERROR");
  82. ADD_CASE(CHAT_E_UNKNOWNCHANNEL, "WOL_CHANNELNOTFOUND");
  83. default:
  84. return "WOL_UNKNOWNERROR";
  85. break;
  86. }
  87. }
  88. /******************************************************************************
  89. *
  90. * NAME
  91. *
  92. * DESCRIPTION
  93. *
  94. * INPUTS
  95. *
  96. * RESULT
  97. *
  98. ******************************************************************************/
  99. const char* const GetNetUtilErrorString(HRESULT hr)
  100. {
  101. switch (hr)
  102. {
  103. ADD_CASE(NETUTIL_E_ERROR, "WOL_ERROR");
  104. ADD_CASE(NETUTIL_E_BUSY, "WOL_BUSY");
  105. ADD_CASE(NETUTIL_E_TIMEOUT, "WOL_TIMEDOUT");
  106. ADD_CASE(NETUTIL_E_INVALIDFIELD, "WOL_PARAMERROR");
  107. ADD_CASE(NETUTIL_E_CANTVERIFY, "WOL_CANTVERIFY");
  108. default:
  109. return "WOL_UNKNOWNERROR";
  110. }
  111. }
  112. /******************************************************************************
  113. *
  114. * NAME
  115. *
  116. * DESCRIPTION
  117. *
  118. * INPUTS
  119. *
  120. * RESULT
  121. *
  122. ******************************************************************************/
  123. const char* const GetDownloadErrorString(HRESULT hr)
  124. {
  125. switch (hr)
  126. {
  127. ADD_CASE(DOWNLOADEVENT_NOSUCHSERVER, "WOL_DOWNLOADNOSERVER");
  128. ADD_CASE(DOWNLOADEVENT_COULDNOTCONNECT, "WOL_DOWNLOADCONNECTERROR");
  129. ADD_CASE(DOWNLOADEVENT_LOGINFAILED, "WOL_DOWNLOADLOGINERROR");
  130. ADD_CASE(DOWNLOADEVENT_NOSUCHFILE, "WOL_DOWNLOADFNF");
  131. ADD_CASE(DOWNLOADEVENT_LOCALFILEOPENFAILED, "WOL_DOWNLOADOPENERROR");
  132. ADD_CASE(DOWNLOADEVENT_TCPERROR, "WOL_DOWNLOADIOERROR");
  133. ADD_CASE(DOWNLOADEVENT_DISCONNECTERROR, "WOL_DOWNLOADDISCONNECTERROR");
  134. default:
  135. return "WOL_UNKNOWNERROR";
  136. }
  137. }
  138. }