### Method

# Soup ContentSniffer sniff

#### Declaration [src]

    char*
    soup_content_sniffer_sniff (
      SoupContentSniffer* sniffer,
      SoupMessage* msg,
      GBytes* buffer,
      GHashTable** params
    )

#### Description [src]

Sniffs `buffer` to determine its Content-Type.

The result may also be influenced by the Content-Type declared in `msg`‘s response headers.

#### Parameters

`msg` | `SoupMessage`
| The message to sniff.
| The data is owned by the caller of the function.
`buffer` | `GBytes`
| A buffer containing the start of `msg`‘s response body.
| The data is owned by the caller of the function.
`params` | `GHashTable`
| Return location for Content-Type parameters (eg, “charset”), or `NULL`.
| The argument will be set by the function.
| The argument can be set to `NULL`.
| The instance takes ownership of the data, and is responsible for freeing it.

#### Return value

Returns: | `char*`
| The sniffed Content-Type of `buffer`; this will never be `NULL`, but may be `application/octet-stream`.
| The caller of the method takes ownership of the data, and is responsible for freeing it.
| The value is a NUL terminated UTF-8 string.