blob: bfbfddfd4749237d4156f1e12daa05d10e83e97f [file] [log] [blame]
The Android Open Source Project2949f582009-03-03 19:30:46 -08001/*
2 * Redistribution and use in source and binary forms, with or without
3 * modification, are permitted provided that: (1) source code
4 * distributions retain the above copyright notice and this paragraph
5 * in its entirety, and (2) distributions including binary code include
6 * the above copyright notice and this paragraph in its entirety in
7 * the documentation or other materials provided with the distribution.
8 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND
9 * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT
10 * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
11 * FOR A PARTICULAR PURPOSE.
12 *
Elliott Hughescec480a2017-12-19 16:54:57 -080013 * Original code by Hannes Gredler (hannes@gredler.at)
Elliott Hughes892a68b2015-10-19 14:43:53 -070014 * Turned into common "text protocol" code, which this uses, by
15 * Guy Harris.
The Android Open Source Project2949f582009-03-03 19:30:46 -080016 */
17
Elliott Hughese2e3bd12017-05-15 10:59:29 -070018/* \summary: Session Initiation Protocol (SIP) printer */
19
The Android Open Source Project2949f582009-03-03 19:30:46 -080020#ifdef HAVE_CONFIG_H
Elliott Hughes820eced2021-08-20 18:00:50 -070021#include <config.h>
The Android Open Source Project2949f582009-03-03 19:30:46 -080022#endif
23
Elliott Hughes820eced2021-08-20 18:00:50 -070024#include "netdissect-stdinc.h"
The Android Open Source Project2949f582009-03-03 19:30:46 -080025
Elliott Hughese2e3bd12017-05-15 10:59:29 -070026#include "netdissect.h"
The Android Open Source Project2949f582009-03-03 19:30:46 -080027
Elliott Hughes892a68b2015-10-19 14:43:53 -070028static const char *sipcmds[] = {
29 "ACK",
30 "BYE",
31 "CANCEL",
32 "DO",
33 "INFO",
34 "INVITE",
35 "MESSAGE",
36 "NOTIFY",
37 "OPTIONS",
38 "PRACK",
39 "QAUTH",
40 "REFER",
41 "REGISTER",
42 "SPRACK",
43 "SUBSCRIBE",
44 "UPDATE",
45 "PUBLISH",
46 NULL
47};
The Android Open Source Project2949f582009-03-03 19:30:46 -080048
49void
Elliott Hughes892a68b2015-10-19 14:43:53 -070050sip_print(netdissect_options *ndo, const u_char *pptr, u_int len)
The Android Open Source Project2949f582009-03-03 19:30:46 -080051{
Elliott Hughes820eced2021-08-20 18:00:50 -070052 ndo->ndo_protocol = "sip";
53 txtproto_print(ndo, pptr, len, sipcmds, RESP_CODE_SECOND_TOKEN);
The Android Open Source Project2949f582009-03-03 19:30:46 -080054}