X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 464B3386F832
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1591536063;
	bh=KCQEztg5TXa3+bwQYWC0wgVg41b8iUiMmWykgGFKyuo=;
	h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post:
	 List-Help:List-Subscribe:From:Reply-To:From;
	b=IqiWZL9J2Bp6hLXjYSebHtrW60dkR4NTBZPWs6XipsIwfARG8os9Md+4gli//z4VQ
	 YiVYjEnb9NG7ofbXT3CgsJ6k+aoofYal4Qd2oQDYGL87hvLc0UT5/vyUdNzQXJmT1x
	 a6RW28UUyUOYGyi2Cj7WDcTIuZvYSUKkTUesmRLM=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org D59963851C34
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=KeUR7ruRFC+vjNKCIwDSVx8pukYX6D/BBBY0H9ydsME=;
 b=Md9NvQjCabfNLVtJy4nDKdHfh4eS+CLmHFwRG3KZ8OKrxyFkP9J3FrZSBVe3N7cDIT
 91LJik50vDmjmZH0eedK5JBb6Mnh7f1t6cE+HRICoioTaynOV3B6DKyvjK4uIGttZbrs
 o0ENVAlV5QJcMn/aJy3tAL/lr6dXc7xG0qoqgOZUOoisXKuzx+XjPi3FGk3ds3A2YSHA
 20xAWd/gS+EfT9zoL+x4gtsS4rTNt06kDtf4qScRrxA5NqxrKnmc1epwh3il4K39jheP
 5CX/RQiqrXw2gUEjNuUX18lVoW2W6IX9vmAL6IaryR983fOAjlizuAxShzycApankvdA
 mH4Q==
X-Gm-Message-State: AOAM531kAZ/X1UlNt91X73Gagr9w/XoHdQGp+FZwf0Pb9/EbPviRgNjU
 BEeVVvDWiVnTLt1uQRxC/z1ze+1HQm6u+M3aXrSDx6UzTJv8t6y0TA==
X-Google-Smtp-Source: ABdhPJzukXE93y+TpkazU68+XWsh7n/G2OSsOTgWtTtQ90HW+ldqrurxa+i0ZogYDEli11Mx0Ssk4BlGNUtBDAcxTmw=
X-Received: by 2002:a2e:3a18:: with SMTP id h24mr9089942lja.268.1591536058939; 
 Sun, 07 Jun 2020 06:20:58 -0700 (PDT)
MIME-Version: 1.0
Date: Sun, 7 Jun 2020 09:20:50 -0400
Message-ID: <CAEF1h+WHsGXzSykQ0G3aXG=8jY5VmpYQQiYNP7DjHJTS1Bkpsw@mail.gmail.com>
Subject: TCP_KEEPINVTL and TCP_KEEPIDLE - Socket Keep Alives not working
To: cygwin@cygwin.com
X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00, DKIM_SIGNED,
 DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, HTML_MESSAGE,
 RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS,
 TXREP autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
 server2.sourceware.org
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.29
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <http://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Cary Lewis via Cygwin <cygwin@cygwin.com>
Reply-To: Cary Lewis <cary.lewis@gmail.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: "Cygwin" <cygwin-bounces@cygwin.com>

These constants are usually defined in  netinet/tcp.h but are not defined
anywhere in cygwin.

As a result there does not seem to be a way to enable the socket level keep
alives in cygwin.

One result of this is curl's --keepalive-time option does not work, but it
would affect any attempt to enable socket keep alives.

Windows' sockets do support keep alives, and indeed the win32 version of
curl works correctly.

Can someone explain why the TCP keep alive constants are not defined?

Is it possible to add this functionality?

Where in the cygwin source code does the actual posix socket to winsock
translation take place?
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
