|
|
@ -1125,6 +1125,21 @@ static bool parse_reconnect(struct pool *pool, json_t *val) |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static bool send_version(struct pool *pool, json_t *val) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
char s[RBUFSIZE]; |
|
|
|
|
|
|
|
int id = json_integer_value(json_object_get(val, "id")); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!id) |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sprintf(s, "{\"id\": %d, \"result\": \""PACKAGE"/"VERSION"\", \"error\": null}", id); |
|
|
|
|
|
|
|
if (!stratum_send(pool, s, strlen(s))) |
|
|
|
|
|
|
|
return false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return true; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
bool parse_method(struct pool *pool, char *s) |
|
|
|
bool parse_method(struct pool *pool, char *s) |
|
|
|
{ |
|
|
|
{ |
|
|
|
json_t *val = NULL, *method, *err_val, *params; |
|
|
|
json_t *val = NULL, *method, *err_val, *params; |
|
|
@ -1181,6 +1196,10 @@ bool parse_method(struct pool *pool, char *s) |
|
|
|
goto out; |
|
|
|
goto out; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!strncasecmp(buf, "client.get_version", 18) && send_version(pool, val)) { |
|
|
|
|
|
|
|
ret = true; |
|
|
|
|
|
|
|
goto out; |
|
|
|
|
|
|
|
} |
|
|
|
out: |
|
|
|
out: |
|
|
|
if (val) |
|
|
|
if (val) |
|
|
|
json_decref(val); |
|
|
|
json_decref(val); |
|
|
|