<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DZone Snippets: buffer code</title>
    <link>http://snippets.dzone.com/posts</link>
    <pubDate>Wed, 23 Jul 2008 19:54:57 GMT</pubDate>
    <description>DZone Snippets: buffer code</description>
    <item>
      <title>C - Example Buffer OverFlow</title>
      <link>http://snippets.dzone.com/posts/show/2949</link>
      <description>/*&lt;br /&gt; *&lt;br /&gt; * Esempio di Buffer Overflow ...&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#include &lt;stdio.h&gt;&lt;br /&gt;#include &lt;stdlib.h&gt;&lt;br /&gt;&lt;br /&gt;int main(int argc, char *argv[])&lt;br /&gt;{&lt;br /&gt;	char *buffer1 = (char *)calloc(5, sizeof(char));&lt;br /&gt;	char *buffer2 = (char *)calloc(15, sizeof(char));&lt;br /&gt;	char *tmp;&lt;br /&gt;	&lt;br /&gt;	strcpy(buffer2, "ls -a --color");&lt;br /&gt;	strcpy(buffer1, argv[1]);&lt;br /&gt;&lt;br /&gt;	// Indirizzi di memoria...&lt;br /&gt;	printf("%p &lt;-- buffer1\n", buffer1);&lt;br /&gt;	printf("%p &lt;-- buffer2\n", buffer2);&lt;br /&gt;	printf("\n\n");&lt;br /&gt;&lt;br /&gt;	// Stampa indirizzi...&lt;br /&gt;	printf("Start code....\n");&lt;br /&gt;	tmp=buffer1;&lt;br /&gt;	while(tmp&lt;buffer2+15)&lt;br /&gt;	{&lt;br /&gt;		printf("%p: %c (0x%x)\n", tmp, *tmp, *(unsigned int *)tmp);&lt;br /&gt;		tmp++;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	printf("\n");&lt;br /&gt;	system(buffer2);&lt;br /&gt;	return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Wed, 01 Nov 2006 23:04:05 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/2949</guid>
      <author>whitetiger ()</author>
    </item>
    <item>
      <title>Java - JMF Simple Filter</title>
      <link>http://snippets.dzone.com/posts/show/2940</link>
      <description>&lt;code&gt;&lt;br /&gt;import java.awt.Dimension;&lt;br /&gt;&lt;br /&gt;import javax.media.Buffer;&lt;br /&gt;import javax.media.Effect;&lt;br /&gt;import javax.media.Format;&lt;br /&gt;import javax.media.ResourceUnavailableException;&lt;br /&gt;import javax.media.format.RGBFormat;&lt;br /&gt;&lt;br /&gt;public class SimpleFilter implements Effect&lt;br /&gt;{&lt;br /&gt;	protected Format inputFormat = null;&lt;br /&gt;	protected Format outputFormat = null;&lt;br /&gt;	&lt;br /&gt;	protected Format[] inputFormats = null;&lt;br /&gt;	protected Format[] outputFormats = null;&lt;br /&gt;	&lt;br /&gt;	public AngelMotionCodec()&lt;br /&gt;	{&lt;br /&gt;		inputFormats = new Format[]{ new RGBFormat(null, Format.NOT_SPECIFIED, Format.byteArray, Format.NOT_SPECIFIED, 24, 3, 2, 1, 3, Format.NOT_SPECIFIED, Format.TRUE, Format.NOT_SPECIFIED) };&lt;br /&gt;		outputFormats = new Format[]{ new RGBFormat(null, Format.NOT_SPECIFIED, Format.byteArray, Format.NOT_SPECIFIED, 24, 3, 2, 1, 3, Format.NOT_SPECIFIED, Format.TRUE, Format.NOT_SPECIFIED) };&lt;br /&gt;	}&lt;br /&gt;	&lt;br /&gt;	/****** Codec ******/&lt;br /&gt;	public Format[] getSupportedInputFormats()&lt;br /&gt;	{&lt;br /&gt;		return inputFormats;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public Format[] getSupportedOutputFormats(Format input)&lt;br /&gt;	{&lt;br /&gt;		if(input != null)&lt;br /&gt;		{&lt;br /&gt;			if(matches(input, inputFormats) != null)&lt;br /&gt;				return new Format[]{ outputFormats[0].intersects(input) };&lt;br /&gt;			else&lt;br /&gt;				return new Format[0];&lt;br /&gt;		}&lt;br /&gt;		&lt;br /&gt;		return outputFormats;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public int process(Buffer input, Buffer output)&lt;br /&gt;	{&lt;br /&gt;		// Swap tra input &amp; output&lt;br /&gt;		Object tmp = input.getData();&lt;br /&gt;		&lt;br /&gt;		input.setData(output.getData());&lt;br /&gt;		output.setData(tmp);&lt;br /&gt;		&lt;br /&gt;		return BUFFER_PROCESSED_OK;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public Format setInputFormat(Format input)&lt;br /&gt;	{&lt;br /&gt;		inputFormat = input;&lt;br /&gt;		&lt;br /&gt;		return input;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public Format setOutputFormat(Format output)&lt;br /&gt;	{&lt;br /&gt;		if(output != null || matches(output, outputFormats) != null)&lt;br /&gt;		{&lt;br /&gt;			RGBFormat inRGB = (RGBFormat) output;&lt;br /&gt;			&lt;br /&gt;			Dimension size = inRGB.getSize();&lt;br /&gt;			int maxDataLength = inRGB.getMaxDataLength();&lt;br /&gt;			int lineStride = inRGB.getLineStride();&lt;br /&gt;			int flipped = inRGB.getFlipped();&lt;br /&gt;			&lt;br /&gt;			if(size == null)&lt;br /&gt;				return null;&lt;br /&gt;			&lt;br /&gt;			if(maxDataLength &lt; size.width*size.height*3)&lt;br /&gt;				maxDataLength = size.width*size.height*3;&lt;br /&gt;			&lt;br /&gt;			if(lineStride &lt; size.width*3)&lt;br /&gt;				lineStride = size.width*3;&lt;br /&gt;			&lt;br /&gt;			if(flipped != Format.FALSE)&lt;br /&gt;				flipped = Format.FALSE;&lt;br /&gt;			&lt;br /&gt;			outputFormat = outputFormats[0].intersects(new RGBFormat(size, maxDataLength, inRGB.getDataType(), inRGB.getFrameRate(), inRGB.getBitsPerPixel(), inRGB.getRedMask(), inRGB.getGreenMask(), inRGB.getBlueMask(), inRGB.getPixelStride(), lineStride, flipped, inRGB.getEndian()));&lt;br /&gt;			&lt;br /&gt;			return outputFormat;&lt;br /&gt;		}&lt;br /&gt;		&lt;br /&gt;		return null;&lt;br /&gt;	}&lt;br /&gt;	/****** Codec ******/&lt;br /&gt;&lt;br /&gt;	/****** PlugIn ******/&lt;br /&gt;	public void close()&lt;br /&gt;	{&lt;br /&gt;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public String getName()&lt;br /&gt;	{&lt;br /&gt;		return "Simple-Filter";&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public void open() throws ResourceUnavailableException&lt;br /&gt;	{&lt;br /&gt;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public void reset()&lt;br /&gt;	{&lt;br /&gt;&lt;br /&gt;	}&lt;br /&gt;	/****** PlugIn ******/&lt;br /&gt;&lt;br /&gt;	/****** Controls ******/&lt;br /&gt;	public Object getControl(String controlType)&lt;br /&gt;	{&lt;br /&gt;		return null;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	public Object[] getControls()&lt;br /&gt;	{&lt;br /&gt;		return null;&lt;br /&gt;	}&lt;br /&gt;	/****** Controls ******/&lt;br /&gt;	&lt;br /&gt;	/****** Utility ******/&lt;br /&gt;	private Format matches(Format in, Format[] out)&lt;br /&gt;	{&lt;br /&gt;		if(in != null &amp;&amp; out != null)&lt;br /&gt;		{&lt;br /&gt;			for(int i=0, cnt=out.length; i&lt;cnt; i++)&lt;br /&gt;			{&lt;br /&gt;				if(in.matches(out[i]))&lt;br /&gt;					return out[i];&lt;br /&gt;			}&lt;br /&gt;		}&lt;br /&gt;		&lt;br /&gt;		return null;&lt;br /&gt;	}&lt;br /&gt;	/****** Utility ******/&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Wed, 01 Nov 2006 06:00:23 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/2940</guid>
      <author>whitetiger ()</author>
    </item>
    <item>
      <title>Cannot modify header information - headers already sent by FIX</title>
      <link>http://snippets.dzone.com/posts/show/2575</link>
      <description>Buffers output and eliminates problem with spaces/line breaks at the beginning/end of files. Make sure to place ob_start(); before header(); is called.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;ob_start();&lt;br /&gt;&lt;br /&gt;header("Location: somepage.php"); //Redirect&lt;br /&gt;&lt;br /&gt;ob_end_flush();&lt;br /&gt;exit;&lt;br /&gt;?&gt;&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Sun, 10 Sep 2006 03:54:29 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/2575</guid>
      <author>dezmarie (Desirae Beberniss)</author>
    </item>
    <item>
      <title>More better buffer name in Emacs</title>
      <link>http://snippets.dzone.com/posts/show/917</link>
      <description>&lt;code&gt;&lt;br /&gt;(require 'uniquify)&lt;br /&gt;(setq uniquify-buffer-name-style 'post-forward-angle-brackets)&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Mon, 28 Nov 2005 01:02:14 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/917</guid>
      <author>kzys (KATO Kazuyoshi)</author>
    </item>
  </channel>
</rss>
