Changeset f0bc6f6 in mainline


Ignore:
Timestamp:
2019-02-08T10:20:40Z (6 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
758c79d
Parents:
2332e13
git-author:
Jiri Svoboda <jiri@…> (2019-01-07 19:20:19)
git-committer:
Jiri Svoboda <jiri@…> (2019-02-08 10:20:40)
Message:

Fix pointer computation for ping reply

Under the right circumstances (such as amd64+shared libs) the pointer
which was offset a bit too far would run into an unmapped page and
cause async_data_write_start() to return EPERM in inetsrv and the
client would never receive the answer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/inetsrv/icmp.c

    r2332e13 rf0bc6f6  
    133133        sdu.dest = dgram->dest;
    134134        sdu.seq_no = uint16_t_be2host(reply->seq_no);
    135         sdu.data = reply + sizeof(icmp_echo_t);
     135        sdu.data = dgram->data + sizeof(icmp_echo_t);
    136136        sdu.size = dgram->size - sizeof(icmp_echo_t);
    137137
Note: See TracChangeset for help on using the changeset viewer.