Commit Diff


commit - 9306df8640f0c2162380ace94e0a9aaaf010937f
commit + b893b787cf33db7b9672b44c31066224b5cfd70e
blob - 38255d5c41ace9a24838ce011bfa0c4d26b8fcb9
blob + a0c9d3084d081149fa3db8fff17a83ac56b19c9b
--- FICS/movecheck.c
+++ FICS/movecheck.c
@@ -38,6 +38,10 @@
 #include "playerdb.h"
 #include "utils.h"
 
+#if __linux__
+#include <bsd/string.h>
+#endif
+
 /*
  * Simply tests if the input string is a move or not. If it matches
  * patterns below.
@@ -817,11 +821,11 @@ move_calculate(game_state_t *gs, move_t *mt, int promo
 		if (piecetype(gs->board[mt->fromFile][mt->fromRank]) == KING &&
 		    mt->fromFile == 4 &&
 		    mt->toFile == 2) {
-			sprintf(mt->moveString, "o-o-o");
+			strlcpy(mt->moveString, "o-o-o", sizeof mt->moveString);
 		} else if (piecetype(gs->board[mt->fromFile][mt->fromRank]) == KING &&
 		    mt->fromFile == 4 &&
 		    mt->toFile == 6) {
-			sprintf(mt->moveString, "o-o");
+			strlcpy(mt->moveString, "o-o", sizeof mt->moveString);
 		} else {
 			ret = snprintf(mt->moveString, sizeof mt->moveString,
 			    "%s/%c%d-%c%d",