libavutil/avstring.c File Reference

#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include "avstring.h"
#include "mem.h"

Go to the source code of this file.

Defines

#define WHITESPACES   " \n\t"

Functions

int av_strstart (const char *str, const char *pfx, const char **ptr)
 Return non-zero if pfx is a prefix of str.
int av_stristart (const char *str, const char *pfx, const char **ptr)
 Return non-zero if pfx is a prefix of str independent of case.
char * av_stristr (const char *s1, const char *s2)
 Locate the first case-independent occurrence in the string haystack of the string needle.
size_t av_strlcpy (char *dst, const char *src, size_t size)
 Copy the string src to dst, but no more than size - 1 bytes, and null-terminate dst.
size_t av_strlcat (char *dst, const char *src, size_t size)
 Append the string src to the string dst, but to a total length of no more than size - 1 bytes, and null-terminate dst.
size_t av_strlcatf (char *dst, size_t size, const char *fmt,...)
 Append output to a string, according to a format.
char * av_d2str (double d)
 Convert a number to a av_malloced string.
char * av_get_token (const char **buf, const char *term)
 Unescape the given string until a non escaped terminating char, and return the token corresponding to the unescaped string.


Define Documentation

#define WHITESPACES   " \n\t"

Definition at line 101 of file avstring.c.


Function Documentation

char* av_d2str ( double  d  ) 

Convert a number to a av_malloced string.

Definition at line 94 of file avstring.c.

char* av_get_token ( const char **  buf,
const char *  term 
)

Unescape the given string until a non escaped terminating char, and return the token corresponding to the unescaped string.

The normal \ and ' escaping is supported. Leading and trailing whitespaces are removed, unless they are escaped with '\' or are enclosed between ''.

Parameters:
buf the buffer to parse, buf will be updated to point to the terminating char
term a 0-terminated list of terminating chars
Returns:
the malloced unescaped string, which must be av_freed by the user, NULL in case of allocation failure

Definition at line 103 of file avstring.c.

Referenced by dilate_init(), init(), parse_filter(), parse_key_value_pair(), parse_link_name(), and set_params().

int av_stristart ( const char *  str,
const char *  pfx,
const char **  ptr 
)

Return non-zero if pfx is a prefix of str independent of case.

If it is, *ptr is set to the address of the first character in str after the prefix.

Parameters:
str input string
pfx prefix to test
ptr updated if the prefix is matched inside str
Returns:
non-zero if the prefix matches, zero otherwise

Definition at line 40 of file avstring.c.

Referenced by av_stristr(), ff_http_auth_handle_header(), has_header(), and rtsp_parse_range_npt().

char* av_stristr ( const char *  haystack,
const char *  needle 
)

Locate the first case-independent occurrence in the string haystack of the string needle.

A zero-length string needle is considered to match at the start of haystack.

This function is a case-insensitive version of the standard strstr().

Parameters:
haystack string to search in
needle string to search for
Returns:
pointer to the located match within haystack or a null pointer if no match

Definition at line 51 of file avstring.c.

Referenced by has_header(), and http_start_receive_data().

size_t av_strlcat ( char *  dst,
const char *  src,
size_t  size 
)

Append the string src to the string dst, but to a total length of no more than size - 1 bytes, and null-terminate dst.

This function is similar to BSD strlcat(), but differs when size <= strlen(dst).

Parameters:
dst destination buffer
src source string
size size of destination buffer
Returns:
the total length of src and dst
WARNING: since the return value use the length of src and dst, these absolutely _must_ be a properly 0-terminated strings, otherwise this will read beyond the end of the buffer and possibly crash.

Definition at line 74 of file avstring.c.

Referenced by applehttp_open(), av_dict_set(), av_get_channel_layout_string(), avcodec_string(), ff_http_auth_create_response(), ff_make_absolute_url(), ff_rtsp_setup_input_streams(), ff_url_join(), matroska_convert_tag(), mmsh_open(), mov_open_dref(), rtp_new_connection(), rtsp_read_packet(), show_help_options(), and url_add_option().

size_t av_strlcatf ( char *  dst,
size_t  size,
const char *  fmt,
  ... 
)

Append output to a string, according to a format.

Never write out of the destination buffer, and always put a terminating 0 within the buffer.

Parameters:
dst destination buffer (string to which the output is appended)
size total size of the destination buffer
fmt printf-compatible format string, specifying how the following parameters are used
Returns:
the length of the string that would have been generated if enough space had been available

Definition at line 82 of file avstring.c.

Referenced by ff_rdt_subscribe_rule(), ff_rtsp_setup_output_streams(), ff_url_join(), get_wb_bitrate_mode(), http_connect(), make_digest_auth(), mov_write_udta_sdp(), and rtsp_read_packet().

size_t av_strlcpy ( char *  dst,
const char *  src,
size_t  size 
)

Copy the string src to dst, but no more than size - 1 bytes, and null-terminate dst.

This function is the same as BSD strlcpy().

Parameters:
dst destination buffer
src source string
size size of destination buffer
Returns:
the length of src
WARNING: since the return value is the length of src, src absolutely _must_ be a properly 0-terminated string, otherwise this will read beyond the end of the buffer and possibly crash.

Definition at line 64 of file avstring.c.

Referenced by amf_parse_object(), applehttp_open(), asf_read_language_list(), ass_encode_frame(), av_get_channel_layout_string(), av_parse_color(), av_strerror(), av_strlcat(), av_url_split(), avformat_alloc_output_context2(), avformat_open_input(), choose_qop(), compute_real_filename(), compute_status(), concat_open(), dprint_options(), dump_metadata(), ff_amf_get_field_value(), ff_ass_add_rect(), ff_http_set_headers(), ff_make_absolute_url(), ff_metadata_demux_compat(), ff_rtsp_setup_output_streams(), ffurl_alloc(), get_preset_file(), http_connect(), http_open(), http_parse_request(), id3v1_set_string(), init(), matroska_convert_tag(), merge_date(), mmsh_open(), mov_write_video_tag(), open_input(), opt_streamid(), parse_playlist(), pp_get_mode_by_name_and_quality(), read_header(), rm_read_audio_stream_info(), rtmp_open(), rtp_new_connection(), rtsp_parse_request(), sap_read_header(), sap_write_header(), show_help_options(), srt_encode_frame(), srt_text_cb(), srt_to_ass(), start_children(), stream_open(), and url_get_filename().

int av_strstart ( const char *  str,
const char *  pfx,
const char **  ptr 
)

Return non-zero if pfx is a prefix of str.

If it is, *ptr is set to the address of the first character in str after the prefix.

Parameters:
str input string
pfx prefix to test
ptr updated if the prefix is matched inside str
Returns:
non-zero if the prefix matches, zero otherwise

Definition at line 29 of file avstring.c.

Referenced by amr_parse_sdp_line(), applehttp_open(), asfrtp_parse_sdp_line(), concat_open(), crypto_open(), ff_make_absolute_url(), ff_real_parse_sdp_a_line(), ff_wms_parse_sdp_a_line(), http_open_cnx(), latm_parse_sdp_line(), md5_close(), opt_output_file(), parse_h264_sdp_line(), parse_playlist(), parse_sdp_line(), rdt_parse_sdp_line(), rtsp_probe(), sap_probe(), and xiph_parse_sdp_line().


Generated on Fri Oct 26 02:38:21 2012 for FFmpeg by  doxygen 1.5.8