_bxxp.c

来自「This directory contains source code for 」· C语言 代码 · 共 43 行

C
43
字号
/*
 * Copyright (C) 2000, Richard Sharpe
 *
 * This software may be distributed either under the terms of the 
 * BSD-style licence that accompanies tcpdump or under the GNU GPL 
 * version 2 or later.
 *
 * print-bxxp.c
 *
 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "interfac.h"
#include "extract.h"

/* Check for a string but not go beyond length
 * Return TRUE on match, FALSE otherwise
 * 
 * Looks at the first few chars up to tl1 ...
 */
static __inline int l_strnstart (const u_char *tstr1, u_int tl1,
                                 const u_char *str2, u_int l2)
{
  if (tl1 > l2)
     return (0);
  return strncmp(tstr1, str2, tl1) == 0 ? 1 : 0;
}

void bxxp_print (const u_char *bp, u_int length)
{
  if (l_strnstart("REQ ", 4, bp, length))  /* A REQuest */
       PUTS (" BXXP REQ");
  else if (l_strnstart("RSP ", 4, bp, length))
       PUTS (" BXXP RSP");
  else if (l_strnstart("SEQ ", 4, bp, length))
       PUTS (" BXXP SEQ");
  else if (l_strnstart("END", 4, bp, length))
       PUTS (" BXXP END");
  else PUTS (" BXXP (payload or undecoded)");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?