Re: DOSemu networking made easy

Mateusz Viste <[email protected]>
Newsgroups org.kernel.vger.linux-msdos
Message-ID <[email protected]>
Hi

I do not think there is any ipv6 support in slirp. But it is not that important I believe, since there is no dos tcp/ip stack with ipv6 support :)


[email protected] wrote:

>Stas Sergeev <[email protected]> writes:
>
>> Aha, thanks for an explanation!
>> Now I've started to understand what is this all about. :)
>> Lets add dosemu-devel and Eric Biederman into CC.
>> The beginning is here:
>> http://marc.info/?l=linux-msdos&m=137207433306065&w=2
>
>I can see the appeal, of unprivileged NAT.
>
>I don't think I have run any network facing applications in DOS.
>
>Does the slirp code make any pretense of supporting IPv6?  Or is it the
>same code I used in college  20 years ago?
>
>Eric
>
>> 24.06.2013 19:38, Mateusz Viste пишет:
>>> It would be really cool to have this incorporated into DOSemu, so
>for
>>> example a network configuration could be something like:
>>>
>>>   $_pktdriver = (on)
>>>   $_vnet = "slirp"
>>>   $_netdev = "/usr/bin/slirp"
>>>
>>> And such configuration would provide working network connectivity in
>>> any situation, without the user having to care about anything (as
>long
>>> as the host would have network itself).
>>>
>>> I even looked at DOSemu source code, and locating the point where
>>> DOSemu opens the TAP interface wasn't a big deal, and it would be
>easy
>>> to implement any other alternative channel there, but I could not
>>> locate the code where DOSemu sends/recv ethernet frames into/from
>the
>>> TAP. If anybody tells me where in the code this happens, I might try
>>> to look further.
>> Sure: in pktnew.c please find the following:
>> ---
>>         if (write(pkt_fd, SEG_ADR((char *), ds, si), LWORD(ecx)) >=
>0) {
>>                     pd_printf("Write to net was ok\n");
>>                     return 1;
>> ---
>>
>> and the following:
>> ---
>>     size = read(fd, pkt_buf, PKT_BUF_SIZE);
>>     if (size < 0) {
>>         p_stats->errors_in++;           /* select() somehow lied */
>>         return 0;
>> ---
>>
>> and that's it. :)

Mateusz
-- 
Sent from mobile mail.
--
To unsubscribe from this list: send the line "unsubscribe linux-msdos" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.