SilcInt16 r, g, b, lr, lg, lb;
int i;
+ map->conn_num++;
+
SILC_LOG_DEBUG(("Processing the data from server (%d/%d)",
map->conn_num, map->conns_num));
- map->conn_num++;
if (map->conn_num != map->conns_num)
return;
/* Load the map image to be processed */
- if (!map->bitmap) {
- if (!map->loadmap.loadmap || !map->loadmap.filename) {
- silc_schedule_task_add(map->client->schedule, 0,
- silc_map_process_done, map, 0, 1,
- SILC_TASK_TIMEOUT, SILC_TASK_PRI_NORMAL);
- return;
- }
+ silc_free(map->bitmap);
+ if (!map->loadmap.loadmap || !map->loadmap.filename) {
+ silc_schedule_task_add(map->client->schedule, 0,
+ silc_map_process_done, map, 0, 1,
+ SILC_TASK_TIMEOUT, SILC_TASK_PRI_NORMAL);
+ return;
+ }
- if (!silc_map_load_ppm(map, map->loadmap.filename)) {
- silc_schedule_task_add(map->client->schedule, 0,
- silc_map_process_done, map, 0, 1,
- SILC_TASK_TIMEOUT, SILC_TASK_PRI_NORMAL);
- return;
- }
+ if (!silc_map_load_ppm(map, map->loadmap.filename)) {
+ silc_schedule_task_add(map->client->schedule, 0,
+ silc_map_process_done, map, 0, 1,
+ SILC_TASK_TIMEOUT, SILC_TASK_PRI_NORMAL);
+ return;
}
/* Now process all received data one by one */
/* Execute the map commands */
silc_dlist_start(mapconn->commands);
while ((cmd = silc_dlist_get(mapconn->commands)) != SILC_LIST_END) {
+ if (cmd->alon && cmd->alat) {
+ cmd->x = silc_map_lon2x(map, cmd->alon);
+ cmd->y = silc_map_lat2y(map, cmd->alat);
+ if (cmd->blon && cmd->blat) {
+ cmd->x2 = silc_map_lon2x(map, cmd->blon);
+ cmd->y2 = silc_map_lat2y(map, cmd->blat);
+ }
+ }
+
if (cmd->cut) {
if (silc_map_cut(map, cmd->x, cmd->y, cmd->width,
cmd->height, &ret_map)) {
/* Write uptime reliability data */
if (map->writerel.writerel)
silc_map_writerel(map, mapconn);
-
}
SILC_LOG_DEBUG(("All connections processed"));
if (map->writemap.writemap)
silc_map_write_ppm(map, map->writemap.filename);
for (i = 0; i < map->cut_count; i++) {
+ if (map->cut[i].alon && map->cut[i].alat) {
+ map->cut[i].x = silc_map_lon2x(map, map->cut[i].alon);
+ map->cut[i].y = silc_map_lat2y(map, map->cut[i].alat);
+ }
if (silc_map_cut(map, map->cut[i].x, map->cut[i].y, map->cut[i].width,
map->cut[i].height, &ret_map)) {
silc_map_write_ppm(ret_map, map->cut[i].filename);
silc_channel_message(SilcClient client, SilcClientConnection conn,
SilcClientEntry sender, SilcChannelEntry channel,
SilcMessagePayload payload,
- SilcMessageFlags flags, const unsigned char *message,
+ SilcChannelPrivateKey key, SilcMessageFlags flags,
+ const unsigned char *message,
SilcUInt32 message_len)
{
SilcUInt32 stats_len = va_arg(va, SilcUInt32);
SilcBufferStruct buf;
- SILC_LOG_DEBUG(("STATS command reply"));
+ SILC_LOG_DEBUG(("STATS command reply from %s", conn->sock->hostname));
/* Get statistics structure */
silc_buffer_set(&buf, stats, stats_len);
break;
default:
+ SILC_LOG_DEBUG(("Unsupported command reply"));
break;
};
silc_schedule_task_del_by_context(client->schedule, mapconn);
- if (status == SILC_CLIENT_CONN_ERROR) {
+ if (status != SILC_CLIENT_CONN_SUCCESS) {
fprintf(stderr, "Could not connect to server %s\n",
conn->remote_host ? conn->remote_host : "");
silc_client_close_connection(client, conn);