Reapply "sbin/ping: allow normal users to specify larger packets"
The ping tests were originally broken by an unrelated isue that is now fixed (2926c25942). THanks to kp@ for fixing the test and Jose Luis Duran for pinting it out. This reverts commit7bc0cb91a2.
This commit is contained in:
+1
-2
@@ -25,7 +25,7 @@
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd September 15, 2023
|
||||
.Dd October 15, 2024
|
||||
.Dt PING 8
|
||||
.Os
|
||||
.Sh NAME
|
||||
@@ -312,7 +312,6 @@ with the 8 bytes of
|
||||
ICMP
|
||||
header data.
|
||||
.Pp
|
||||
For IPv4, only the super-user may specify values more than default.
|
||||
This option cannot be used with ping sweeps.
|
||||
.Pp
|
||||
For IPv6, you may need to specify
|
||||
|
||||
+5
-6
@@ -96,8 +96,8 @@
|
||||
#define DEFDATALEN 56 /* default data length */
|
||||
#define FLOOD_BACKOFF 20000 /* usecs to back off if F_FLOOD mode */
|
||||
/* runs out of buffer space */
|
||||
#define MAXIPLEN (sizeof(struct ip) + MAX_IPOPTLEN)
|
||||
#define MAXICMPLEN (ICMP_ADVLENMIN + MAX_IPOPTLEN)
|
||||
#define MAXIPLEN ((int)sizeof(struct ip) + MAX_IPOPTLEN)
|
||||
#define MAXPAYLOAD (IP_MAXPACKET - MAXIPLEN - ICMP_MINLEN)
|
||||
#define MAXWAIT 10000 /* max ms to wait for response */
|
||||
#define MAXALARM (60 * 60) /* max seconds for alarm timeout */
|
||||
#define MAXTOS 255
|
||||
@@ -458,11 +458,10 @@ ping(int argc, char *const *argv)
|
||||
errx(EX_USAGE, "invalid packet size: `%s'",
|
||||
optarg);
|
||||
datalen = (int)ltmp;
|
||||
if (uid != 0 && datalen > DEFDATALEN) {
|
||||
errno = EPERM;
|
||||
err(EX_NOPERM,
|
||||
if (datalen > MAXPAYLOAD) {
|
||||
errx(EX_USAGE,
|
||||
"packet size too large: %d > %u",
|
||||
datalen, DEFDATALEN);
|
||||
datalen, MAXPAYLOAD);
|
||||
}
|
||||
break;
|
||||
case 'T': /* multicast TTL */
|
||||
|
||||
Reference in New Issue
Block a user