ship->shp_ptime = arg;
break;
case 'R':
- memcpy(ship->shp_rpath, p, sizeof(ship->shp_rpath));
+ strncpy(ship->shp_rpath, p, sizeof(ship->shp_rpath) - 1);
break;
case 'W':
ship->shp_rflags = arg;
land->lnd_retreat = arg;
break;
case 'R':
- memcpy(land->lnd_rpath, p, sizeof(land->lnd_rpath));
+ strncpy(land->lnd_rpath, p, sizeof(land->lnd_rpath) - 1);
break;
case 'W':
land->lnd_rflags = arg;
memset(ship.shp_rpath, 0, sizeof(ship.shp_rpath));
if (pq != NULL) {
- strncpy(ship.shp_rpath, pq, sizeof(ship.shp_rpath));
+ strncpy(ship.shp_rpath, pq, sizeof(ship.shp_rpath) - 1);
putship(ship.shp_uid, &ship);
}
if (rflags >= 0) {
memset(land.lnd_rpath, 0, sizeof(land.lnd_rpath));
if (pq != NULL) {
- strncpy(land.lnd_rpath, pq, sizeof(land.lnd_rpath));
+ strncpy(land.lnd_rpath, pq, sizeof(land.lnd_rpath) - 1);
putland(land.lnd_uid, &land);
}
if (rflags >= 0) {