source: lib/misc.h @ 2b02617

Last change on this file since 2b02617 was ffdf2e7, checked in by Wilmer van der Gaast <wilmer@…>, at 2010-08-10T11:18:09Z

When doing SRV lookups, return an array with all RRs instead of just the
first one. The first isn't always the best one and this is currently causing
GTalk issues when talk2.l.google.com (which is currently dead) is first.

  • Property mode set to 100644
File size: 2.6 KB
Line 
1  /********************************************************************\
2  * BitlBee -- An IRC to other IM-networks gateway                     *
3  *                                                                    *
4  * Copyright 2002-2004 Wilmer van der Gaast and others                *
5  \********************************************************************/
6
7/* Misc. functions                                                      */
8
9/*
10  This program is free software; you can redistribute it and/or modify
11  it under the terms of the GNU General Public License as published by
12  the Free Software Foundation; either version 2 of the License, or
13  (at your option) any later version.
14
15  This program is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  GNU General Public License for more details.
19
20  You should have received a copy of the GNU General Public License with
21  the Debian GNU/Linux distribution in /usr/share/common-licenses/GPL;
22  if not, write to the Free Software Foundation, Inc., 59 Temple Place,
23  Suite 330, Boston, MA  02111-1307  USA
24*/
25
26#ifndef _MISC_H
27#define _MISC_H
28
29#include <gmodule.h>
30#include <time.h>
31
32struct ns_srv_reply
33{
34        int prio;
35        int weight;
36        int port;
37        char name[];
38};
39
40G_MODULE_EXPORT void strip_linefeed( gchar *text );
41G_MODULE_EXPORT char *add_cr( char *text );
42G_MODULE_EXPORT char *strip_newlines(char *source);
43
44G_MODULE_EXPORT time_t get_time( int year, int month, int day, int hour, int min, int sec );
45G_MODULE_EXPORT time_t mktime_utc( struct tm *tp );
46double gettime( void );
47
48G_MODULE_EXPORT void strip_html( char *msg );
49G_MODULE_EXPORT char *escape_html( const char *html );
50G_MODULE_EXPORT void http_decode( char *s );
51G_MODULE_EXPORT void http_encode( char *s );
52
53G_MODULE_EXPORT char *ipv6_wrap( char *src );
54G_MODULE_EXPORT char *ipv6_unwrap( char *src );
55
56G_MODULE_EXPORT signed int do_iconv( char *from_cs, char *to_cs, char *src, char *dst, size_t size, size_t maxbuf );
57
58G_MODULE_EXPORT void random_bytes( unsigned char *buf, int count );
59
60G_MODULE_EXPORT int is_bool( char *value );
61G_MODULE_EXPORT int bool2int( char *value );
62
63G_MODULE_EXPORT struct ns_srv_reply **srv_lookup( char *service, char *protocol, char *domain );
64G_MODULE_EXPORT void srv_free( struct ns_srv_reply **srv );
65
66G_MODULE_EXPORT char *word_wrap( const char *msg, int line_len );
67
68G_MODULE_EXPORT gboolean ssl_sockerr_again( void *ssl );
69
70G_MODULE_EXPORT int md5_verify_password( char *password, char *hash );
71
72G_MODULE_EXPORT char **split_command_parts( char *command );
73
74#endif
Note: See TracBrowser for help on using the repository browser.