vss_send(): Fix EOF-check for FEC clients.
[paraslash.git] / stat.c
diff --git a/stat.c b/stat.c
index 4ba1b0e8485a8125d2fcdd6353e8508e83417340..0306cba4b2432ba7c09a0310d6ef762d581843a6 100644 (file)
--- a/stat.c
+++ b/stat.c
@@ -35,7 +35,7 @@ struct stat_client {
        /** The stat client's file descriptor. */
        int fd;
        /** Bitmask of those status items the client is interested in. */
-       long unsigned item_mask;
+       uint64_t item_mask;
        /** Its entry in the list of stat clients. */
        struct list_head node;
 };
@@ -68,7 +68,7 @@ static void dump_stat_client_list(void)
  * \return Positive value on success, or -E_TOO_MANY_CLIENTS if
  * the number of connected clients exceeds #MAX_STAT_CLIENTS.
  */
-int stat_client_add(int fd, long unsigned mask)
+int stat_client_add(int fd, uint64_t mask)
 {
        struct stat_client *new_client;
 
@@ -103,13 +103,14 @@ void stat_client_write(const char *msg, int itemnum)
 {
        struct stat_client *sc, *tmp;
        size_t len = strlen(msg);
+       const uint64_t one = 1;
 
        if (!initialized || !len)
                return;
        list_for_each_entry_safe(sc, tmp, &client_list, node) {
                int fd = sc->fd, ret;
 
-               if (!((1 << itemnum) & sc->item_mask))
+               if (!((one << itemnum) & sc->item_mask))
                        continue;
                if (write_ok(fd) > 0) {
                        ret = write(fd, msg, len);