00001 /* 00002 * SpanDSP - a series of DSP components for telephony 00003 * 00004 * t35.h - ITU T.35 FAX non-standard facility processing. 00005 * 00006 * Written by Steve Underwood <steveu@coppice.org> 00007 * 00008 * Copyright (C) 2003 Steve Underwood 00009 * 00010 * All rights reserved. 00011 * 00012 * This program is free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU Lesser General Public License version 2.1, 00014 * as published by the Free Software Foundation. 00015 * 00016 * This program is distributed in the hope that it will be useful, 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 * GNU Lesser General Public License for more details. 00020 * 00021 * You should have received a copy of the GNU Lesser General Public 00022 * License along with this program; if not, write to the Free Software 00023 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00024 * 00025 * $Id: t35.h,v 1.14 2008/04/17 14:27:00 steveu Exp $ 00026 */ 00027 00028 /*! \file */ 00029 00030 #if !defined(_SPANDSP_T35_H_) 00031 #define _SPANDSP_T35_H_ 00032 00033 /*! \page t35_page T.35 manufacturer specific processing for FAX machines 00034 \section t35_page_sec_1 What does it do? 00035 ???. 00036 00037 \section t35_page_sec_2 How does it work? 00038 ???. 00039 */ 00040 00041 /*! A table of the country names associated with each possible value of the T.35 country code 00042 selector octet. */ 00043 extern const char *t35_country_codes[256]; 00044 00045 #if defined(__cplusplus) 00046 extern "C" 00047 { 00048 #endif 00049 00050 /*! Decode an NSF field to try to determine the make and model of the 00051 remote machine. 00052 \brief Decode an NSF field. 00053 \param msg The NSF message. 00054 \param len The length of the NSF message. 00055 \param country A pointer which will be pointed to the identified country of origin. 00056 If a NULL pointer is given, the country of origin will not be returned. 00057 If the country of origin is not identified, NULL will be returned. 00058 \param vendor A pointer which will be pointed to the identified vendor. 00059 If a NULL pointer is given, the vendor ID will not be returned. 00060 If the vendor is not identified, NULL will be returned. 00061 \param model A pointer which will be pointed to the identified model. 00062 If a NULL pointer is given, the model will not be returned. 00063 If the model is not identified, NULL will be returned. 00064 \return TRUE if the machine was identified, otherwise FALSE. 00065 */ 00066 int t35_decode(const uint8_t *msg, int len, const char **country, const char **vendor, const char **model); 00067 00068 #if defined(__cplusplus) 00069 } 00070 #endif 00071 00072 #endif 00073 /*- End of file ------------------------------------------------------------*/