org.owasp.esapi.codecs
Class MySQLCodec

java.lang.Object
  extended by org.owasp.esapi.codecs.Codec
      extended by org.owasp.esapi.codecs.MySQLCodec

public class MySQLCodec
extends Codec

Implementation of the Codec interface for MySQL strings. See http://mirror.yandex.ru/mirrors/ftp.mysql.com/doc/refman/5.0/en/string-syntax.html for more information.

Since:
June 1, 2007
Author:
Jeff Williams (jeff.williams .at. aspectsecurity.com) Aspect Security
See Also:
Encoder

Field Summary
static int ANSI_MODE
           
static int MYSQL_MODE
           
 
Constructor Summary
MySQLCodec(int mode)
          Instantiate the MySQL codec
 
Method Summary
 java.lang.Character decodeCharacter(PushbackString input)
          Returns the decoded version of the next character from the input string and advances the current character in the PushbackString. Returns the decoded version of the character starting at index, or null if no decoding is possible.
 java.lang.String encodeCharacter(char[] immune, java.lang.Character c)
          Default implementation that should be overridden in specific codecs. Returns quote-encoded character
 
Methods inherited from class org.owasp.esapi.codecs.Codec
containsCharacter, decode, encode, getHexForNonAlphanumeric, toHex, toOctal
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MYSQL_MODE

public static final int MYSQL_MODE
See Also:
Constant Field Values

ANSI_MODE

public static final int ANSI_MODE
See Also:
Constant Field Values
Constructor Detail

MySQLCodec

public MySQLCodec(int mode)
Instantiate the MySQL codec

Parameters:
mode - Mode has to be one of {MYSQL_MODE|ANSI_MODE} to allow correct encoding
Method Detail

encodeCharacter

public java.lang.String encodeCharacter(char[] immune,
                                        java.lang.Character c)
Default implementation that should be overridden in specific codecs. Returns quote-encoded character

Overrides:
encodeCharacter in class Codec
Parameters:
immune -
c - the Character to encode
Returns:
the encoded Character

decodeCharacter

public java.lang.Character decodeCharacter(PushbackString input)
Returns the decoded version of the next character from the input string and advances the current character in the PushbackString. If the current character is not encoded, this method MUST reset the PushbackString. Returns the decoded version of the character starting at index, or null if no decoding is possible. Formats all are legal (case sensitive) In ANSI_MODE '' decodes to ' In MYSQL_MODE \x decodes to x (or a small list of specials)

Overrides:
decodeCharacter in class Codec
Parameters:
input - the Character to decode
Returns:
the decoded Character


Copyright © 2010 The Open Web Application Security Project (OWASP). All Rights Reserved.