UTF8 not work proberly

I have install MySQL ver 4.1.x, However, I still encounter the data become ???
problem...
I install MySQL ver 4.1.x and set the default connection to utf8.
If i enter the data manually, it works, and the data display as chinese char
acter. That's great!!!
However, if i insert the data by running my application, (which is a web app
liaction writen with Java struts tech and deploy on Tomcat server) the data
become ??? T_T
When retrieve also, the data store as chinese character become ??? after ret
rieve... T_T
My code to insert data:
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from custdetail where oid=31");
rs.next();
String fullname=new String(rs2.getString("fullname").getBytes("iso-8859-1"),
"UTF-8");
out.println("fullname:"+fullname);
rs.close();
stmt.close();My web page also got set:
<%@ page contentType="text/html;charset=UTF-8"%>
for web.xml, Database's connection url:
jdbc:mysql://localhost:3306/dms?characterEncoding=utf8
I think i am missing something...
anyone know how to solve the problem, please advise me =)
Thanks in advance.

Hi,
We are getting one problem,while retriving the data from Ms-Access.
We have the data stoted in Arabic format.But while retriving from the db and showing in JList(Swing) it is showing as ?????.
We have put the uti with the connection
Class.forName(AppConfig.get(DB_DRIVER)).newInstance();
Properties prop = new Properties();
prop.put ("charSet", "UTF8");
Connection conn = DriverManager
.getConnection(AppConfig.get(DB_URL),prop);
and put the Utf while retriving
String codeDesc = new String(rs.getString(CODEDESC).getBytes("iso-8859-1"),
"UTF-8");
Still no result
Please suggest .
Thanks,
HIMSIM

Similar Messages

  • UTF8 not work in SQLPlus

    I have changed all the NLS_LANG in registry to AMERICAN_AMERICA.UTF8 in order to read the special Chinese characters in database (unicode). I can read the Chinese name in Forms 6i. But I cannot read chinese characters in SQL Plus, Why?....What should I do?
    Thanks

    Hi,
    That's called "String Aggregation".
    Starting in Oracle 11.2, the function LISTAGG does that.
    AskTom:
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:2196162600402
    shows several different ways to do it, for versions 9 and up.
    I recommend the first one, the user-defined function STRAGG, which is similar to LISTAGG, and which you can copy from that page.
    Once you have STRAGG installed, your query is simply
    SELECT    STRAGG (username)     AS all_usernames
    FROM      dba_users
    ;On Oracle 10 (and up) you may have a similar function, WM_CONCAT (owned by WMSYS), already installed.
    WM_CONCAT is not documented, so you may not want to use it in your Production applications.
    Another good site concerning String Aggregation is
    http://www.oracle-base.com/articles/10g/StringAggregationTechniques.php
    If you're wondering why your original query didn't do what you hoped:
    SELECT  ...
    FROM    table_x;(withoiut a WHERE clause or any other clauses) is guaranteed to produce on row of output for every row in table_x. It doesn't matter what is in the SELECT clause; there will always be one output row fro every original row.

  • Game not working proberly

    I've just got X Plane 8 and have the Photographic Scenery volume 1 pack to go with it. The game works fine, but I only get a bit of Hampshire/Somerset (or roughly that direction) and a bit of east Kent/Essex with the scenery disk. A massive chunk down the middle is missing, this area doesn't have ANY land at all but instead is just water. Does anyone know what's going on here and how I can correct it please?
    Thanks.
    PS I'm running X Plane on a 17inch PowerBook with a 1ghz processor, 1Gb ram, a 32mb graphics card and Tiger.

    I don't have the scenery disk, and I would contact the author of the Scenery disk to let them know of your problem. I have X-Plane 8, and it says recommended 64 MB of VRAM. Given your machine only has 32 MB of VRAM, that may be a limitation. Games in my past experience really mean the Recommended amount is required, and the required amount only works in limited situations.

  • Minetest translation does not work on my machine.

    Hey there.
    After trying my luck in the official Minetest forums a week ago and got nothing more than the initial “try this-and-that” thing as response in the German discussion section and no reply at all in the regular discussion section I decided to ask on Reddit on last Saturday afternoon, too. On Reddit my question only got 3 upvotes and no comments.
    Since no-one seems to know what’s going on I decided to post my question here, too.
    It sems like the translation feature in Minetest does not work on my machine for unknown reason.
    The language files are there and according to it’s oputput and the PKGBUILD Minetest was compiled with gettext support. LANG and LC_MESSAGES are properly set (I even tried LC_ALL). Localization works properly in all other applications that support localization.
    Here’s some relevant system information.
    $ uname -rms
    Linux 3.16.1-1-ARCH x86_64
    $ minetest --version
    Minetest 0.4.10
    Using Irrlicht 1.8.1
    Build info: VER=0.4.10 BUILD_TYPE=Release RUN_IN_PLACE=0 USE_GETTEXT=1 USE_SOUND=1 USE_CURL=1 USE_FREETYPE=1 USE_LUAJIT=0 STATIC_SHAREDIR=/usr/share/minetest
    $ pacman -Ql minetest | grep locale/de
    minetest /usr/share/locale/de/
    minetest /usr/share/locale/de/LC_MESSAGES/
    minetest /usr/share/locale/de/LC_MESSAGES/minetest.mo
    $ locale
    LANG=de_DE.utf8
    LC_CTYPE="de_DE.utf8"
    LC_NUMERIC="de_DE.utf8"
    LC_TIME="de_DE.utf8"
    LC_COLLATE="de_DE.utf8"
    LC_MONETARY="de_DE.utf8"
    LC_MESSAGES="de_DE.utf8"
    LC_PAPER="de_DE.utf8"
    LC_NAME="de_DE.utf8"
    LC_ADDRESS="de_DE.utf8"
    LC_TELEPHONE="de_DE.utf8"
    LC_MEASUREMENT="de_DE.utf8"
    LC_IDENTIFICATION="de_DE.utf8"
    LC_ALL=de_DE.utf8
    $ cat /etc/locale.gen
    de_DE.UTF-8 UTF-8
    en_DK.UTF-8 UTF-8
    en_US.UTF-8 UTF-8
    According to the discussion in the German discussion section in the Minetest forums I tried to set language = DE (and variants like de_DE with or without .utf8 in all possible variants) in minetest.conf but it didn’t change anything. Also: Here’s the output of running Minetest with --verbose parameter.
    16:47:01: INFO[main]: Using system-wide paths (NOT RUN_IN_PLACE)
    16:47:01: INFO[main]: path_share = /usr/share/minetest
    16:47:01: INFO[main]: path_user = /home/dirk/.minetest
    16:47:01: INFO[main]: minetest with SER_FMT_VER_HIGHEST_READ=26, VER=0.4.10 BUILD_TYPE=Release RUN_IN_PLACE=0 USE_GETTEXT=1 USE_SOUND=1 USE_CURL=1 USE_FREETYPE=1 USE_LUAJIT=0 STATIC_SHAREDIR=/usr/share/minetest
    16:47:01: INFO[main]: logfile = /home/dirk/.minetest/debug.txt
    16:47:01: VERBOSE[main]: httpfetch_init: parallel_limit=8
    16:47:01: INFO[main]: Message locale is now set to: LC_CTYPE=de_DE.utf8;LC_NUMERIC=C;LC_TIME=en_DK.utf8;LC_COLLATE=de_DE.utf8;LC_MONETARY=de_DE.utf8;LC_MESSAGES=de_DE.utf8;LC_PAPER=de_DE.utf8;LC_NAME=de_DE.utf8;LC_ADDRESS=de_DE.utf8;LC_TELEPHONE=de_DE.utf8;LC_MEASUREMENT=de_DE.utf8;LC_IDENTIFICATION=de_DE.utf8
    Irrlicht log: Irrlicht Engine version 1.8.1
    Irrlicht log: Linux 3.16.1-1-ARCH #1 SMP PREEMPT Thu Aug 14 07:40:19 CEST 2014 x86_64
    Irrlicht log: Using renderer: OpenGL 3.3.0
    Irrlicht log: GeForce 9600 GT/PCIe/SSE2: NVIDIA Corporation
    Irrlicht log: OpenGL driver version is 1.2 or better.
    Irrlicht log: GLSL version: 3.3
    16:47:01: INFO[main]: text_height=22
    16:47:01: INFO[main]: Searching worlds...
    16:47:01: INFO[main]: In /home/dirk/.minetest/worlds:
    16:47:01: INFO[main]: Spielwelt
    16:47:01: INFO[main]: 1 found.
    16:47:01: INFO[main]: Waiting for other menus
    16:47:01: INFO[main]: Waited for other menus
    16:47:01: INFO[main]: Audio: Initializing...
    16:47:01: INFO[main]: Audio: Vorbis extension NOT present
    16:47:01: INFO[main]: Audio: Initialized: OpenAL 1.1 ALSOFT 1.16.0, using OpenAL Soft
    16:47:01: INFO[main]: GUIEngine: Initializing Lua
    16:47:01: VERBOSE[AsyncWorkerThread_0]: Loading and running script from /usr/share/minetest/builtin/init.lua
    16:47:01: INFO[AsyncWorkerThread_0]: Initializing Asynchronous environment
    16:47:01: VERBOSE[AsyncWorkerThread_1]: Loading and running script from /usr/share/minetest/builtin/init.lua
    16:47:01: INFO[AsyncWorkerThread_1]: Initializing Asynchronous environment
    16:47:01: VERBOSE[AsyncWorkerThread_2]: Loading and running script from /usr/share/minetest/builtin/init.lua
    16:47:01: INFO[main]: SCRIPTAPI: Initialized main menu modules
    16:47:01: VERBOSE[main]: Loading and running script from /usr/share/minetest/builtin/init.lua
    16:47:01: INFO[AsyncWorkerThread_2]: Initializing Asynchronous environment
    16:47:01: VERBOSE[AsyncWorkerThread_3]: Loading and running script from /usr/share/minetest/builtin/init.lua
    16:47:01: INFO[AsyncWorkerThread_3]: Initializing Asynchronous environment
    16:47:01: INFO[main]: Searching worlds...
    16:47:01: INFO[main]: In /home/dirk/.minetest/worlds:
    16:47:01: INFO[main]: Spielwelt
    16:47:01: INFO[main]: 1 found.
    16:47:01: VERBOSE[main]: OpenALSoundManager::maintain(): 0 playing sounds, 0 sound names loaded
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.0.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.1.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.2.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.3.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.4.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.5.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.6.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.7.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.8.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.9.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /home/dirk/.minetest/sounds/main_menu.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.0.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.1.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.2.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.3.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.4.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.5.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.6.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.7.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.8.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.9.ogg for decoding
    16:47:01: INFO[main]: Audio: Error opening /usr/share/minetest/sounds/main_menu.ogg for decoding
    16:47:01: INFO[main]: OpenALSoundManager: "main_menu" not found.
    16:47:05: INFO[main]: Audio: Deinitializing...
    16:47:05: INFO[main]: Audio: Deinitialized.
    16:47:05: INFO[main]: GUIEngine: Deinitializing scripting
    16:47:05: INFO[main]: Searching worlds...
    16:47:05: INFO[main]: In /home/dirk/.minetest/worlds:
    16:47:05: INFO[main]: Spielwelt
    16:47:05: INFO[main]: 1 found.
    16:47:05: INFO[main]: Updating configuration file: "/home/dirk/.minetest/minetest.conf"
    16:47:05: INFO[main]: Skipping writing of /home/dirk/.minetest/minetest.conf because content wouldn't be modified
    16:47:05: INFO[main]: Updating configuration file: "/home/dirk/.minetest/minetest.conf"
    16:47:05: INFO[main]: Skipping writing of /home/dirk/.minetest/minetest.conf because content wouldn't be modified
    16:47:05: VERBOSE[main]: httpfetch_cleanup: cleaning up
    … or on nopaste.info for better readability.
    Since it seems to work for everyone else (otherwise there might be more replies to my quesions in several places, I guess *g*) I’m pretty sure that’s a local problem on my machine. But since gettext properly works on my machine in all and every application that use it I have no clue at all where to start debugging.
    Hints are highly appreciated Thanks in advance!
    Kind regards,
    Dirk

    Hi there...
    It gives me a URL that begins with http:// Safari does something strange, ie. flashes the page, and then complains about not recognizing photo://
    It seems that it has not figured out that it needs to open iPhoto 6.
    Regardless, the provided link is not viewable when cutting and pasting into safari, neither.
    I am using the latest and greatest 10.4.4, Safari is 2.0.3.

  • Issue with spamassassin, now mail not working

    Hi ! I installed spamtrainer almost two months ago. Been feeding the [email protected] for several weeks now , 700 emails each day at least .
    There was very little improvement if none at all. Tried to add "@local_domains_maps = (1)" to amavisd.conf last night thinking it might be the problem , though no virtual domain exist. This was one of the issue on the default Amavisd config. The other one is adding the symbolic link which I already done.
    Computer froze while adding the parameter "@local_domains_maps = (1)", so I manually turn off the Power Mac, then mail stopped altogether. The mails are filing up but the clients couldn't send or receive since this incidence .
    FF is the maincf. and amavis.conf
    All help are greatly appreciated.
    mail:/Users/sysadmin root# postconf -n
    alias_maps = hash:/etc/aliases,hash:/var/mailman/data/aliases
    always_bcc =
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    content_filter = smtp-amavis:[127.0.0.1]:10024
    daemon_directory = /usr/libexec/postfix
    debug_peer_level = 2
    enable_server_options = yes
    html_directory = no
    inet_interfaces = all
    local_recipient_maps = proxy:unix:passwd.byname $alias_maps
    luser_relay =
    mail_owner = postfix
    mailbox_size_limit = 0
    mailbox_transport = cyrus
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/share/man
    maps_rbl_domains =
    message_size_limit = 31457280
    mydestination = $myhostname,localhost.$mydomain,localhost,mail.cpplaw.com,cpplaw.com
    mydomain = cpplaw.com
    mydomain_fallback = localhost
    myhostname = mail.cpplaw.com
    mynetworks = 127.0.0.1/32,192.168.1.0/24,127.0.0.1
    mynetworks_style = host
    newaliases_path = /usr/bin/newaliases
    owner_request_special = no
    queue_directory = /private/var/spool/postfix
    readme_directory = /usr/share/doc/postfix
    recipient_delimiter = +
    relayhost =
    sample_directory = /usr/share/doc/postfix/examples
    sendmail_path = /usr/sbin/sendmail
    setgid_group = postdrop
    smtpd_client_restrictions = permit_mynetworks permit
    smtpd_tls_key_file =
    unknown_local_recipient_reject_code = 550
    virtual_mailbox_domains =
    virtual_transport = virtual
    mail:/Users/sysadmin root# postconf -n
    alias_maps = hash:/etc/aliases,hash:/var/mailman/data/aliases
    always_bcc =
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    content_filter = smtp-amavis:[127.0.0.1]:10024
    daemon_directory = /usr/libexec/postfix
    debug_peer_level = 2
    enable_server_options = yes
    html_directory = no
    inet_interfaces = all
    local_recipient_maps = proxy:unix:passwd.byname $alias_maps
    luser_relay =
    mail_owner = postfix
    mailbox_size_limit = 0
    mailbox_transport = cyrus
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/share/man
    maps_rbl_domains =
    message_size_limit = 31457280
    mydestination = $myhostname,localhost.$mydomain,localhost,mail.cpplaw.com,cpplaw.com
    mydomain = cpplaw.com
    mydomain_fallback = localhost
    myhostname = mail.cpplaw.com
    mynetworks = 127.0.0.1/32,192.168.1.0/24,127.0.0.1
    mynetworks_style = host
    newaliases_path = /usr/bin/newaliases
    owner_request_special = no
    queue_directory = /private/var/spool/postfix
    readme_directory = /usr/share/doc/postfix
    recipient_delimiter = +
    relayhost =
    sample_directory = /usr/share/doc/postfix/examples
    sendmail_path = /usr/sbin/sendmail
    setgid_group = postdrop
    smtpd_client_restrictions = permit_mynetworks permit
    smtpd_tls_key_file =
    unknown_local_recipient_reject_code = 550
    virtual_mailbox_domains =
    virtual_transport = virtual
    mail:/Users/sysadmin root#
    _______________________Amavisd.cof_________________________
    use strict;
    # Configuration file for amavisd-new
    # This software is licensed under the GNU General Public License (GPL).
    # See comments at the start of amavisd-new for the whole license text.
    #Sections:
    # Section I - Essential daemon and MTA settings
    # Section II - MTA specific
    # Section III - Logging
    # Section IV - Notifications/DSN, BOUNCE/REJECT/DROP/PASS destiny, quarantine
    # Section V - Per-recipient and per-sender handling, whitelisting, etc.
    # Section VI - Resource limits
    # Section VII - External programs, virus scanners, SpamAssassin
    # Section VIII - Debugging
    #GENERAL NOTES:
    # This file is a normal Perl code, interpreted by Perl itself.
    # - make sure this file (or directory where it resides) is NOT WRITABLE
    # by mere mortals, otherwise it represents a severe security risk!
    # - for values which are interpreted as booleans, it is recommended
    # to use 1 for true, and 0 or undef or '' for false.
    # THIS IS DIFFERENT FROM OLDER AMAVIS VERSIONS where "no" also meant false,
    # now it means true, like any nonempty string does!
    # - Perl syntax applies. Most notably: strings in "" may include variables
    # (which start with $ or @); to include characters @ and $ in double
    # quoted strings, precede them by a backslash; in single-quoted strings
    # the $ and @ lose their special meaning, so it is usually easier to use
    # single quoted strings. Still, in both cases a backslash need to be doubled
    # - variables with names starting with a '@' are lists, the values assigned
    # to them should be lists as well, e.g. ('one@foo', $mydomain, "three");
    # note the comma-separation and parenthesis. If strings in the list
    # do not contain spaces nor variables, a Perl operator qw() may be used
    # as a shorthand to split its argument on whitespace and produce a list
    # of strings, e.g. qw( one@foo example.com three ); Note that the argument
    # to qw is quoted implicitly and no variable interpretation is done within
    # (no '$' variable evaluations). The #-initiated comments can not be used
    # within the string. In other words, $ and # lose their special meaning
    # withing a qw argument, just like within '...' strings.
    # - all e-mail addresses in this file and as used internally by the daemon
    # are in their raw (rfc2821-unquoted and nonbracketed) form, i.e.
    # Bob "Funny" [email protected], not: "Bob \"Funny\" Dude"@example.com
    # and not <"@example.com>; also: '' and not ''.
    # Section I - Essential daemon and MTA settings
    # $MYHOME serves as a quick default for some other configuration settings.
    # More refined control is available with each individual setting further down.
    # $MYHOME is not used directly by the program. No trailing slash!
    #$MYHOME = '/var/lib/amavis'; # (default is '/var/amavis')
    # : $mydomain serves as a quick default for some other configuration settings.
    # : More refined control is available with each individual setting further down.
    # : $mydomain is never used directly by the program.
    $mydomain = 'cpplaw.com'; aol.com'; # (no useful default)
    # Set the user and group to which the daemon will change if started as root
    # (otherwise just keep the UID unchanged, and these settings have no effect):
    $daemon_user = 'clamav'; # (no default; customary: vscan or amavis)
    $daemon_group = 'clamav'; # (no default; customary: vscan or amavis)
    # Runtime working directory (cwd), and a place where
    # temporary directories for unpacking mail are created.
    # (no trailing slash, may be a scratch file system)
    $TEMPBASE = $MYHOME; # (must be set if other config vars use is)
    #$TEMPBASE = "$MYHOME/tmp"; # prefer to keep home dir /var/amavis clean?
    # $helpers_home sets environment variable HOME, and is passed as option
    # 'home_dir_for_helpers' to Mail::SpamAssassin::new. It should be a directory
    # on a normal persistent file system, not a scratch or temporary file system
    #$helpers_home = $MYHOME; # (defaults to $MYHOME)
    #$daemon_chroot_dir = $MYHOME; # (default is undef, meaning: do not chroot)
    #$pid_file = "$MYHOME/amavisd.pid"; # (default is "$MYHOME/amavisd.pid")
    #$lock_file = "$MYHOME/amavisd.lock"; # (default is "$MYHOME/amavisd.lock")
    # set environment variables if you want (no defaults):
    $ENV{TMPDIR} = $TEMPBASE; # wise, but usually not necessary
    # MTA SETTINGS, UNCOMMENT AS APPROPRIATE,
    # both $forward_method and $notify_method default to 'smtp:127.0.0.1:10025'
    # POSTFIX, or SENDMAIL in dual-MTA setup, or EXIM V4
    # (set host and port number as required; host can be specified
    # as IP address or DNS name (A or CNAME, but MX is ignored)
    #$forward_method = 'smtp:127.0.0.1:10025'; # where to forward checked mail
    #$notify_method = $forward_method; # where to submit notifications
    # NOTE: The defaults (above) are good for Postfix or dual-sendmail. You MUST
    # uncomment the approprate settings below if using other setups!
    # SENDMAIL MILTER, using amavis-milter.c helper program:
    #$forward_method = undef; # no explicit forwarding, sendmail does it by itself
    # milter; option -odd is needed to avoid deadlocks
    #$notify_method = 'pipe:flags=q argv=/usr/sbin/sendmail -Ac -i -odd -f ${sender} -- ${recipient}';
    # just a thought: can we use use -Am instead of -odd ?
    # SENDMAIL (old non-milter setup, as relay):
    #$forward_method = 'pipe:flags=q argv=/usr/sbin/sendmail -C/etc/sendmail.orig.cf -i -f ${sender} -- ${recipient}';
    #$notify_method = $forward_method;
    # SENDMAIL (old non-milter setup, amavis.c calls local delivery agent):
    #$forward_method = undef; # no explicit forwarding, amavis.c will call LDA
    #$notify_method = 'pipe:flags=q argv=/usr/sbin/sendmail -Ac -i -f ${sender} -- ${recipient}';
    # EXIM v3 (not recommended with v4 or later, which can use SMTP setup instead):
    #$forward_method = 'pipe:flags=q argv=/usr/sbin/exim -oMr scanned-ok -i -f ${sender} -- ${recipient}';
    #$notify_method = $forward_method;
    # prefer to collect mail for forwarding as BSMTP files?
    #$forward_method = "bsmtp:$MYHOME/out-%i-%n.bsmtp";
    #$notify_method = $forward_method;
    # Net::Server pre-forking settings
    # You may want $max_servers to match the width of your MTA pipe
    # feeding amavisd, e.g. with Postfix the 'Max procs' field in the
    # master.cf file, like the '2' in the: smtp-amavis unix - - n - 2 smtp
    $max_servers = 2; # number of pre-forked children (default 2)
    $max_requests = 10; # retire a child after that many accepts (default 10)
    $child_timeout=5*60; # abort child if it does not complete each task in n sec
    # (default: 8*60 seconds)
    # Check also the settings of @av_scanners at the end if you want to use
    # virus scanners. If not, you may want to delete the whole long assignment
    # to the variable @av_scanners, which will also remove the virus checking
    # code (e.g. if you only want to do spam scanning).
    # Here is a QUICK WAY to completely DISABLE some sections of code
    # that WE DO NOT WANT (it won't even be compiled-in).
    # For more refined controls leave the following two lines commented out,
    # and see further down what these two lookup lists really mean.
    #@bypass_virus_checks_acl = qw( . ); # uncomment to DISABLE anti-virus code
    #@bypass_spam_checks_acl = qw( . ); # uncomment to DISABLE anti-spam code
    # Any setting can be changed with a new assignment, so make sure
    # you do not unintentionally override these settings further down!
    # Lookup list of local domains (see README.lookups for syntax details)
    # NOTE:
    # For backwards compatibility the variable names @local_domains (old) and
    # @local_domains_acl (new) are synonyms. For consistency with other lookups
    # the name @local_domains_acl is now preferred. It also makes it more
    # obviously distinct from the new %local_domains hash lookup table.
    # local_domains* lookup tables are used in deciding whether a recipient
    # is local or not, or in other words, if the message is outgoing or not.
    # This affects inserting spam-related headers for local recipients,
    # limiting recipient virus notifications (if enabled) to local recipients,
    # in deciding if address extension may be appended, and in SQL lookups
    # for non-fqdn addresses. Set it up correctly if you need features
    # that rely on this setting (or just leave empty otherwise).
    # With Postfix (2.0) a quick reminder on what local domains normally are:
    # a union of domains spacified in: $mydestination, $virtual_alias_domains,
    # $virtual_mailbox_domains, and $relay_domains.
    @local_domains_acl = ( ".$mydomain" ); # $mydomain and its subdomains
    # @local_domains_acl = qw(); # default is empty, no recipient treated as local
    # @local_domains_acl = qw( .example.com );
    # @local_domains_acl = qw( .example.com !host.sub.example.net .sub.example.net );
    # @local_domains_acl = ( ".$mydomain", '.example.com', 'sub.example.net' );
    # or alternatively(A), using a Perl hash lookup table, which may be assigned
    # directly, or read from a file, one domain per line; comments and empty lines
    # are ignored, a dot before a domain name implies its subdomains:
    #read_hash(\%local_domains, '/var/amavis/local_domains');
    #or alternatively(B), using a list of regular expressions:
    # $local_domains_re = new_RE( qr'[@.]example\.com$'i );
    # see README.lookups for syntax and semantics
    # Section II - MTA specific (defaults should be ok)
    # if $relayhost_is_client is true, IP address in $notify_method and
    # $forward_method is dynamically overridden with SMTP client peer address
    # if available, which makes possible for several hosts to share one daemon
    #$relayhost_is_client = 1; # (defaults to false)
    #$insert_received_line = 1; # behave like MTA: insert 'Received:' header
    # (does not apply to sendmail/milter)
    # (default is true)
    # AMAVIS-CLIENT PROTOCOL INPUT SETTINGS (e.g. with sendmail milter)
    # (used with amavis helper clients like amavis-milter.c and amavis.c,
    # NOT needed for Postfix and Exim)
    $unix_socketname = "$MYHOME/amavisd.sock"; # amavis helper protocol socket
    #$unix_socketname = undef; # disable listening on a unix socket
    # (default is undef, i.e. disabled)
    # (usual setting is $MYHOME/amavisd.sock)
    # Do we receive quoted or raw addresses from the helper program?
    # (does not apply to SMTP; defaults to true)
    #$gets_addr_in_quoted_form = 1; # "Bob \"Funny\" Dude"@example.com
    #$gets_addr_in_quoted_form = 0; # Bob "Funny" [email protected]
    # SMTP SERVER (INPUT) PROTOCOL SETTINGS (e.g. with Postfix, Exim v4, ...)
    # (used when MTA is configured to pass mail to amavisd via SMTP or LMTP)
    $inet_socket_port = 10024; # accept SMTP on this local TCP port
    # (default is undef, i.e. disabled)
    # multiple ports may be provided: $inet_socket_port = [10024, 10026, 10028];
    # SMTP SERVER (INPUT) access control
    # - do not allow free access to the amavisd SMTP port !!!
    # when MTA is at the same host, use the following (one or the other or both):
    #$inet_socket_bind = '127.0.0.1'; # limit socket bind to loopback interface
    # (default is '127.0.0.1')
    @inet_acl = qw( 127.0.0.1 ); # allow SMTP access only from localhost IP
    # (default is qw( 127.0.0.1 ) )
    # when MTA (one or more) is on a different host, use the following:
    #@inet_acl = qw(127/8 10.1.0.1 10.1.0.2); # adjust the list as appropriate
    #$inet_socket_bind = undef; # bind to all IP interfaces
    # Example1:
    # @inet_acl = qw( 127/8 10/8 172.16/12 192.168/16 );
    # permit only SMTP access from loopback and rfc1918 private address space
    # Example2:
    # @inet_acl = qw( !192.168.1.12 172.16.3.3 !172.16.3/255.255.255.0
    # 127.0.0.1 10/8 172.16/12 192.168/16 );
    # matches loopback and rfc1918 private address space except host 192.168.1.12
    # and net 172.16.3/24 (but host 172.16.3.3 within 172.16.3/24 still matches)
    # Example3:
    # @inet_acl = qw( 127/8
    # !172.16.3.0 !172.16.3.127 172.16.3.0/25
    # !172.16.3.128 !172.16.3.255 172.16.3.128/25 );
    # matches loopback and both halves of the 172.16.3/24 C-class,
    # split into two subnets, except all four broadcast addresses
    # for these subnets
    # See README.lookups for details on specifying access control lists.
    # Section III - Logging
    # true (e.g. 1) => syslog; false (e.g. 0) => logging to file
    $DO_SYSLOG = 0; # (defaults to false)
    #$SYSLOG_LEVEL = 'user.info'; # (defaults to 'mail.info')
    # Log file (if not using syslog)
    $LOGFILE = "/var/log/amavis.log"; # (defaults to empty, no log)
    #NOTE: levels are not strictly observed and are somewhat arbitrary
    # 0: startup/exit/failure messages, viruses detected
    # 1: args passed from client, some more interesting messages
    # 2: virus scanner output, timing
    # 3: server, client
    # 4: decompose parts
    # 5: more debug details
    $log_level = 4; # (defaults to 0)
    # Customizeable template for the most interesting log file entry (e.g. with
    # $log_level=0) (take care to properly quote Perl special characters like '\')
    # For a list of available macros see README.customize .
    # only log infected messages (useful with log level 0):
    # $log_templ = '[? %#V |[? %#F ||banned filename ([%F|,])]|infected ([%V|,])]#
    # [? %#V |[? %#F ||, from=<%o>, to=[<%R>|,][? %i ||, quarantine %i]]#
    # |, from=<%o>, to=[<%R>|,][? %i ||, quarantine %i]]';
    # log both infected and noninfected messages (default):
    $log_templ = '[? %#V |[? %#F |[?%#D|Not-Delivered|Passed]|BANNED name/type (%F)]|INFECTED (%V)], #
    <%o> -> [<%R>|,][? %i ||, quarantine %i], Message-ID: %m, Hits: %c';
    # Section IV - Notifications/DSN, BOUNCE/REJECT/DROP/PASS destiny, quarantine
    # Select notifications text encoding when Unicode-aware Perl is converting
    # text from internal character representation to external encoding (charset
    # in MIME terminology)
    # to be used in RFC 2047-encoded header field bodies, e.g. in Subject:
    #$hdr_encoding = 'iso-8859-1'; # (default: 'iso-8859-1')
    # to be used in notification body text: its encoding and Content-type.charset
    #$bdy_encoding = 'iso-8859-1'; # (default: 'iso-8859-1')
    # Default template texts for notifications may be overruled by directly
    # assigning new text to template variables, or by reading template text
    # from files. A second argument may be specified in a call to read_text(),
    # specifying character encoding layer to be used when reading from the
    # external file, e.g. 'utf8', 'iso-8859-1', or often just $bdy_encoding.
    # Text will be converted to internal character representation by Perl 5.8.0
    # or later; second argument is ignored otherwise. See PerlIO::encoding,
    # Encode::PerlIO and perluniintro man pages.
    # $notify_sender_templ = read_text('/var/amavis/notify_sender.txt');
    # $notify_virus_sender_templ= read_text('/var/amavis/notify_virus_sender.txt');
    # $notify_virus_admin_templ = read_text('/var/amavis/notify_virus_admin.txt');
    # $notify_virus_recips_templ= read_text('/var/amavis/notify_virus_recips.txt');
    # $notify_spam_sender_templ = read_text('/var/amavis/notify_spam_sender.txt');
    # $notify_spam_admin_templ = read_text('/var/amavis/notify_spam_admin.txt');
    # If notification template files are collectively available in some directory,
    # use read_l10n_templates which calls read_text for each known template.
    # read_l10n_templates('/etc/amavis/en_US');
    # Here is an overall picture (sequence of events) of how pieces fit together
    # (only virus controls are shown, spam controls work the same way):
    # bypass_virus_checks set for all recipients? ==> PASS
    # no viruses? ==> PASS
    # log virus if $log_templ is nonempty
    # quarantine if $virus_quarantine_to is nonempty
    # notify admin if $virus_admin (lookup) nonempty
    # notify recips if $warnvirusrecip and (recipient is local or $warn_offsite)
    # add address extensions for local recipients (when enabled)
    # send (non-)delivery notifications
    # to sender if DSN needed (BOUNCE) or ($warnvirussender and D_PASS)
    # virus_lovers or final_destiny==D_PASS ==> PASS
    # DISCARD (2xx) or REJECT (5xx) (depending on final_*_destiny)
    # Equivalent flow diagram applies for spam checks.
    # If a virus is detected, spam checking is skipped entirely.
    # The following symbolic constants can be used in *destiny settings:
    # D_PASS mail will pass to recipients, regardless of bad contents;
    # D_DISCARD mail will not be delivered to its recipients, sender will NOT be
    # notified. Effectively we lose mail (but will be quarantined
    # unless disabled). Not a decent thing to do for a mailer.
    # D_BOUNCE mail will not be delivered to its recipients, a non-delivery
    # notification (bounce) will be sent to the sender by amavisd-new;
    # Exception: bounce (DSN) will not be sent if a virus name matches
    # $viruses_that_fake_sender_re, or to messages from mailing lists
    # (Precedence: bulk|list|junk);
    # D_REJECT mail will not be delivered to its recipients, sender should
    # preferably get a reject, e.g. SMTP permanent reject response
    # (e.g. with milter), or non-delivery notification from MTA
    # (e.g. Postfix). If this is not possible (e.g. different recipients
    # have different tolerances to bad mail contents and not using LMTP)
    # amavisd-new sends a bounce by itself (same as D_BOUNCE).
    # Notes:
    # D_REJECT and D_BOUNCE are similar, the difference is in who is responsible
    # for informing the sender about non-delivery, and how informative
    # the notification can be (amavisd-new knows more than MTA);
    # With D_REJECT, MTA may reject original SMTP, or send DSN (delivery status
    # notification, colloquially called 'bounce') - depending on MTA;
    # Best suited for sendmail milter, especially for spam.
    # With D_BOUNCE, amavisd-new (not MTA) sends DSN (can better explain the
    # reason for mail non-delivery, but unable to reject the original
    # SMTP session). Best suited to reporting viruses, and for Postfix
    # and other dual-MTA setups, which can't reject original client SMTP
    # session, as the mail has already been enqueued.
    $final_virus_destiny = D_BOUNCE; # (defaults to D_BOUNCE)
    $final_banned_destiny = D_BOUNCE; # (defaults to D_BOUNCE)
    $final_spam_destiny = D_PASS; # (defaults to D_REJECT)
    $final_bad_header_destiny = D_PASS; # (defaults to D_PASS), D_BOUNCE suggested
    # Alternatives to consider for spam:
    # - use D_PASS if clients will do filtering based on inserted mail headers;
    # - use D_DISCARD, if kill_level is set safely high;
    # - use D_BOUNCE instead of D_REJECT if not using milter;
    # There are no sensible alternatives to D_BOUNCE for viruses, but consider:
    # - use D_PASS (or virus_lovers) and $warnvirussender=1 to deliver viruses;
    # - use D_REJECT instead of D_BOUNCE if using milter and under heavy
    # virus storm;
    # Don't bother to set both D_DISCARD and $warn*sender=1, it will get mapped
    # to D_BOUNCE.
    # The separation of *_destiny values into D_BOUNCE, D_REJECT, D_DISCARD
    # and D_PASS made settings $warnvirussender and $warnspamsender only still
    # useful with D_PASS.
    # The following $warn*sender settings are ONLY used when mail is
    # actually passed to recipients ($final_*_destiny=D_PASS, or *_lovers*).
    # Bounces or rejects produce non-delivery status notification anyway.
    # Notify virus sender?
    #$warnvirussender = 1; # (defaults to false (undef))
    # Notify spam sender?
    #$warnspamsender = 1; # (defaults to false (undef))
    # Notify sender of banned files?
    #$warnbannedsender = 1; # (defaults to false (undef))
    # Notify sender of syntactically invalid header containing non-ASCII characters?
    #$warnbadhsender = 1; # (defaults to false (undef))
    # Notify virus (or banned files) RECIPIENT?
    # (not very useful, but some policies demand it)
    #$warnvirusrecip = 1; # (defaults to false (undef))
    #$warnbannedrecip = 1; # (defaults to false (undef))
    # Notify also non-local virus/banned recipients if $warn*recip is true?
    # (including those not matching local_domains*)
    #$warn_offsite = 1; # (defaults to false (undef), i.e. only notify locals)
    # Treat envelope sender address as unreliable and don't send sender
    # notification / bounces if name(s) of detected virus(es) match the list.
    # Note that virus names are supplied by external virus scanner(s) and are
    # not standardized, so virus names may need to be adjusted.
    # See README.lookups for syntax.
    $viruses_that_fake_sender_re = new_RE(
    qr'nimda|hybris|klez|bugbear|yaha|braid|sobig|fizzer|palyh|peido|holar'i );
    # where to send ADMIN VIRUS NOTIFICATIONS (should be a fully qualified address)
    # - the administrator address may be a simple fixed e-mail address (a scalar),
    # or may depend on the SENDER address (e.g. its domain), in which case
    # a ref to a hash table can be specified (specify lower-cased keys,
    # dot is a catchall, see README.lookups).
    # Empty or undef lookup disables virus admin notifications.
    $virus_admin = '[email protected]';
    # $virus_admin = undef; # do not send virus admin notifications (default)
    # $virus_admin = {'not.example.com' => '', '.' => '[email protected]'};
    # $virus_admin = '[email protected]';
    # equivalent to $virus_admin, but for spam admin notifications:
    #$spam_admin = '[email protected]';# $spam_admin = undef; # do not send spam admin notifications (default)
    # $spam_admin = {'not.example.com' => '', '.' => '[email protected]'};
    #advanced example, using a hash lookup table:
    # - $virus_admin = {
    # '[email protected]' => '[email protected]',
    # '.sub1.example.com' => '[email protected]',
    # '.sub2.example.com' => '', # don't send admin notifications
    # 'a.sub3.example.com' => '[email protected]',
    # '.sub3.example.com' => '[email protected]',
    # '.example.com' => '[email protected]', # catchall for our virus senders
    # '.' => '[email protected]', # catchall for the rest
    # whom notification reports are sent from (ENVELOPE SENDER);
    # may be a null reverse path, or a fully qualified address:
    # (admin and recip sender addresses default to $mailfrom
    # for compatibility, which in turn defaults to undef (empty) )
    # If using strings in double quotes, don't forget to quote @, i.e. \@
    $mailfrom_notify_admin = "virusalert\@$mydomain";
    $mailfrom_notify_recip = "virusalert\@$mydomain";
    $mailfrom_notify_spamadmin = "spam.police\@$mydomain";
    # 'From' HEADER FIELD for sender and admin notifications.
    # This should be a replyable address, see rfc1894. Not to be confused
    # with $mailfrom_notify_sender, which is the envelope address and
    # should be empty (null reverse path) according to rfc2821.
    # $hdrfrom_notify_sender = "amavisd-new <postmaster\@$mydomain>";
    # $hdrfrom_notify_sender = 'amavisd-new <[email protected]>';
    # (defaults to: "amavisd-new <postmaster\@$myhostname>")
    # $hdrfrom_notify_admin = $mailfrom_notify_admin;
    # (defaults to: $mailfrom_notify_admin)
    # $hdrfrom_notify_spamadmin = $mailfrom_notify_spamadmin;
    # (defaults to: $mailfrom_notify_spamadmin)
    # whom quarantined messages appear to be sent from (envelope sender)
    $mailfrom_to_quarantine = undef; # original sender if undef, or set explicitly
    # (default is undef)
    # Location to put infected mail into: (applies to 'local:' quarantine method)
    # empty for not quarantining, may be a file (mailbox),
    # or a directory (no trailing slash)
    # (the default value is undef, meaning no quarantine)
    $QUARANTINEDIR = '/var/virusmails';
    #$virus_quarantine_method = "local:virus-%i-%n"; # default
    #$spam_quarantine_method = "local:spam-%b-%i-%n"; # default
    #use the new 'bsmtp:' method as an alternative to the default 'local:'
    #$virus_quarantine_method = "bsmtp:$QUARANTINEDIR/virus-%i-%n.bsmtp";
    #$spam_quarantine_method = "bsmtp:$QUARANTINEDIR/spam-%b-%i-%n.bsmtp";
    # When using the 'local:' quarantine method (default), the following applies:
    # A finer control of quarantining is available through variable
    # $virus_quarantine_to/$spam_quarantine_to. It may be a simple scalar string,
    # or a ref to a hash lookup table, or a regexp lookup table object,
    # which makes possible to set up per-recipient quarantine addresses.
    # The value of scalar $virus_quarantine_to/$spam_quarantine_to (or a
    # per-recipient lookup result from the hash table %$virus_quarantine_to)
    # is/are interpreted as follows:
    # VARIANT 1:
    # empty or undef disables quarantine;
    # VARIANT 2:
    # a string NOT containg an '@';
    # amavisd will behave as a local delivery agent (LDA) and will quarantine
    # viruses to local files according to hash %local_delivery_aliases (pseudo
    # aliases map) - see subroutine mail_to_local_mailbox() for details.
    # Some of the predefined aliases are 'virus-quarantine' and 'spam-quarantine'.
    # Setting $virus_quarantine_to ($spam_quarantine_to) to this string will:
    # * if $QUARANTINEDIR is a directory, each quarantined virus will go
    # to a separate file in the $QUARANTINEDIR directory (traditional
    # amavis style, similar to maildir mailbox format);
    # * otherwise $QUARANTINEDIR is treated as a file name of a Unix-style
    # mailbox. All quarantined messages will be appended to this file.
    # Amavisd child process must obtain an exclusive lock on the file during
    # delivery, so this may be less efficient than using individual files
    # or forwarding to MTA, and it may not work across NFS or other non-local
    # file systems (but may be handy for pickup of quarantined files via IMAP
    # for example);
    # VARIANT 3:
    # any email address (must contain '@').
    # The e-mail messages to be quarantined will be handed to MTA
    # for delivery to the specified address. If a recipient address local to MTA
    # is desired, you may leave the domain part empty, e.g. 'infected@', but the
    # '@' character must nevertheless be included to distinguish it from variant 2.
    # This method enables more refined delivery control made available by MTA
    # (e.g. its aliases file, other local delivery agents, dealing with
    # privileges and file locking when delivering to user's mailbox, nonlocal
    # delivery and forwarding, fan-out lists). Make sure the mail-to-be-quarantined
    # will not be handed back to amavisd for checking, as this will cause a loop
    # (hopefully broken at some stage)! If this can be assured, notifications
    # will benefit too from not being unecessarily virus-scanned.
    # By default this is safe to do with Postfix and Exim v4 and dual-sendmail
    # setup, but probably not safe with sendmail milter interface without
    # precaution.
    # (the default value is undef, meaning no quarantine)
    #$virus_quarantine_to = '[email protected]'; # traditional local quarantine
    #$virus_quarantine_to = 'infected@'; # forward to MTA for delivery
    #$virus_quarantine_to = "virus-quarantine\@$mydomain"; # similar
    #$virus_quarantine_to = '[email protected]'; # similar
    #$virus_quarantine_to = undef; # no quarantine
    #$virus_quarantine_to = new_RE( # per-recip multiple quarantines
    # [qr'^user@example\.com$'i => 'infected@'],
    # [qr'^(.*)@example\.com$'i => 'virus-${1}@example.com'],
    # [qr'^(.*)(@[^@])?$'i => 'virus-${1}${2}'],
    # [qr/.*/ => 'virus-quarantine'] );
    # similar for spam
    # (the default value is undef, meaning no quarantine)
    #$spam_quarantine_to = '[email protected]';
    #$spam_quarantine_to = "spam-quarantine\@$mydomain";
    #$spam_quarantine_to = new_RE( # per-recip multiple quarantines
    # [qr'^(.*)@example\.com$'i => 'spam-${1}@example.com'],
    # [qr/.*/ => 'spam-quarantine'] );
    # In addition to per-recip quarantine, a by-sender lookup is possible. It is
    # similar to $spam_quarantine_to, but the lookup key is the sender address:
    #$spam_quarantine_bysender_to = undef; # dflt: no by-sender spam quarantine
    # Add X-Virus-Scanned header field to mail?
    $X_HEADER_TAG = 'X-Virus-Scanned'; # (default: undef)
    # Leave empty to add no header field # (default: undef)
    $X_HEADER_LINE = "by amavisd-new at $mydomain";
    $remove_existing_x_scanned_headers = 0; # leave existing X-Virus-Scanned alone
    #$remove_existing_x_scanned_headers= 1; # remove existing headers
    # (defaults to false)
    $remove_existing_spam_headers = 0; # leave existing X-Spam* headers alone
    #$remove_existing_spam_headers = 1; # remove existing spam headers if
    # spam scanning is enabled (default)
    # set $bypass_decode_parts to true if you only do spam scanning, or if you
    # have a good virus scanner that can deal with compression and recursively
    # unpacking archives by itself, and save amavisd the trouble.
    # Disabling decoding also causes banned_files checking to only see
    # MIME names and MIME content types, not the content classification types
    # as provided by the file(1) utility.
    # It is a double-edged sword, make sure you know what you are doing!
    #$bypass_decode_parts = 1; # (defaults to false)
    # don't trust this file type or corresponding unpacker for this file type,
    # keep both the original and the unpacked file
    # (lookup key is what file(1) utility returned):
    $keep_decoded_original_re = new_RE(
    qr'^(ASCII|text|uuencoded|xxencoded|binhex)'i,
    # Checking for banned MIME types and names. If any mail part matches,
    # the whole mail is rejected, much like the way viruses are handled.
    # A list in object $banned_filename_re can be defined to provide a list
    # of Perl regular expressions to be matched against each part's:
    # * Content-Type value (both declared and effective mime-type),
    # including the possible security risk content types
    # message/partial and message/external-body, as specified by rfc2046;
    # * declared (recommended) file names as specified by MIME subfields
    # Content-Disposition.filename and Content-Type.name, both in their
    # raw (encoded) form and in rfc2047-decoded form if applicable;
    # * file content type as guessed by 'file(1)' utility, both the raw result
    # from file(1), as well as short type name, classified into names such as
    # .asc, .txt, .html, .doc, .jpg, .pdf, .zip, .exe, ..., which is always
    # beginning with a dot - see subroutine determine_file_types().
    # This step is done only if $bypass_decode_parts is not true.
    # * leave $banned_filename_re undefined to disable these checks
    # (giving an empty list to new_RE() will also always return false)
    $banned_filename_re = new_RE(
    qr'\.[a-zA-Z][a-zA-Z0-9]{0,3}\.(vbs|pif|scr|bat|com|exe|dll)$'i, # double extension
    # qr'.\.(exe|vbs|pif|scr|bat|com)$'i, # banned extension - basic
    # qr'.\.(ade|adp|bas|bat|chm|cmd|com|cpl|crt|exe|hlp|hta|inf|ins|isp|js|
    # jse|lnk|mdb|mde|msc|msi|msp|mst|pcd|pif|reg|scr|sct|shs|shb|vb|
    # vbe|vbs|wsc|wsf|wsh)$'ix, # banned extension - long
    # qr'^\.(exe|zip|lha|tnef)$'i, # banned file(1) types
    # qr'^application/x-msdownload$'i, # banned MIME types
    # qr'^message/partial$'i, qr'^message/external-body$'i, # rfc2046
    # See http://support.microsoft.com/default.aspx?scid=kb;EN-US;q262631
    # and http://www.cknow.com/vtutor/vtextensions.htm
    # A little trick: a pattern qr'\.exe$' matches both a short type name '.exe',
    # as well as any file name which happens to end with .exe. If only matching
    # a file name is desired, but not the short name, a pattern qr'.\.exe$'i
    # or similar may be used, which requires that at least one character preceeds
    # the '.exe', and so it will never match short file types, which always start
    # with a dot.
    # Section V - Per-recipient and per-sender handling, whitelisting, etc.
    # %virus_lovers, @virus_lovers_acl and $virus_lovers_re lookup tables:
    # (these should be considered policy options, they do not disable checks,
    # see bypas*checks for that!)
    # Exclude certain RECIPIENTS from virus filtering by adding their lower-cased
    # envelope e-mail address (or domain only) to the hash %virus_lovers, or to
    # the access list @virus_lovers_acl - see README.lookups and examples.
    # Make sure the appropriate form (e.g. external/internal) of address
    # is used in case of virtual domains, or when mapping external to internal
    # addresses, etc. - this is MTA-specific.
    # Notifications would still be generated however (see the overall
    # picture above), and infected mail (if passed) gets additional header:
    # X-AMaViS-Alert: INFECTED, message contains virus: ...
    # (header not inserted with milter interface!)
    # NOTE (milter interface only): in case of multiple recipients,
    # it is only possible to drop or accept the message in its entirety - for all
    # recipients. If all of them are virus lovers, we'll accept mail, but if
    # at least one recipient is not a virus lover, we'll discard the message.
    # %bypass_virus_checks, @bypass_virus_checks_acl and $bypass_virus_checks_re
    # lookup tables:
    # (this is mainly a time-saving option, unlike virus_lovers* !)
    # Similar in concept to %virus_lovers, a hash %bypass_virus_checks,
    # access list @bypass_virus_checks_acl and regexp list $bypass_virus_checks_re
    # are used to skip entirely the decoding, unpacking and virus checking,
    # but only if ALL recipients match the lookup.
    # %bypass_virus_checks/@bypass_virus_checks_acl/$bypass_virus_checks_re
    # do NOT GUARANTEE the message will NOT be checked for viruses - this may
    # still happen when there is more than one recipient for a message, and
    # not all of them match these lookup tables. To guarantee virus delivery,
    # a recipient must also match %virus_lovers/@virus_lovers_acl lookups
    # (but see milter limitations above),
    # NOTE: it would not be clever to base virus checks on SENDER address,
    # since there are no guarantees that it is genuine. Many viruses
    # and spam messages fake sender address. To achieve selective filtering
    # based on the source of the mail (e.g. IP address, MTA port number, ...),
    # use mechanisms provided by MTA if available.
    # Similar to lookup tables controlling virus checking, there exist
    # spam scanning, banned names/types, and headers_checks control counterparts:
    # %spam_lovers, @spam_lovers_acl, $spam_lovers_re
    # %banned_files_lovers, @banned_files_lovers_acl, $banned_files_lovers_re
    # %bad_header_lovers, @bad_header_lovers_acl, $bad_header_lovers_re
    # and:
    # %bypass_spam_checks/@bypass_spam_checks_acl/$bypass_spam_checks_re
    # %bypass_banned_checks/@bypass_banned_checks_acl/$bypass_banned_checks_re
    # %bypass_header_checks/@bypass_header_checks_acl/$bypass_header_checks_re
    # See README.lookups for details about the syntax.
    # The following example disables spam checking altogether,
    # since it matches any recipient e-mail address (any address
    # is a subdomain of the top-level root DNS domain):
    # @bypass_spam_checks_acl = qw( . );
    # @bypass_header_checks_acl = qw( [email protected] );
    # @bad_header_lovers_acl = qw( [email protected] );
    # See README.lookups for further detail, and examples below.
    # $virus_lovers{lc("postmaster\@$mydomain")} = 1;
    # $virus_lovers{lc('[email protected]')} = 1;
    # $virus_lovers{lc('[email protected]')} = 1;
    # $virus_lovers{lc('some.user@')} = 1; # this recipient, regardless of domain
    # $virus_lovers{lc('[email protected]')} = 0; # never, even if domain matches
    # $virus_lovers{lc('example.com')} = 1; # this domain, but not its subdomains
    # $virus_lovers{lc('.example.com')}= 1; # this domain, including its subdomains
    #or:
    # @virus_lovers_acl = qw( [email protected] !lab.xxx.com .xxx.com yyy.org );
    # $bypass_virus_checks{lc('[email protected]')} = 1;
    # @bypass_virus_checks_acl = qw( some.ddd !butnot.example.com .example.com );
    # @virus_lovers_acl = qw( [email protected] );
    # $virus_lovers_re = new_RE( qr'(helpdesk|postmaster)@example\.com$'i );
    # $spam_lovers{lc("postmaster\@$mydomain")} = 1;
    # $spam_lovers{lc('[email protected]')} = 1;
    # $spam_lovers{lc('[email protected]')} = 1;
    # @spam_lovers_acl = qw( !.example.com );
    # $spam_lovers_re = new_RE( qr'^user@example\.com$'i );
    # don't run spam check for these RECIPIENT domains:
    # @bypass_spam_checks_acl = qw( d1.com .d2.com a.d3.com );
    # or the other way around (bypass check for all BUT these):
    # @bypass_spam_checks_acl = qw( !d1.com !.d2.com !a.d3.com . );
    # a practical application: don't check outgoing mail for spam:
    # @bypass_spam_checks_acl = ( "!.$mydomain", "." );
    # (a downside of which is that such mail will not count as ham in SA bayes db)
    # Where to find SQL server(s) and database to support SQL lookups?
    # A list of triples: (dsn,user,passw). (dsn = data source name)
    # Specify more than one for multiple (backup) SQL servers.
    # See 'man DBI', 'man DBD::mysql', 'DBD::Pg', ... for details.
    # @lookup_sql_dsn =
    # ( ['DBI:mysql:mail:host1', 'some-username1', 'some-password1'],
    # ['DBI:mysql:mail:host2', 'some-username2', 'some-password2'] );
    # ('mail' in the example is the database name, choose what you like)
    # With PostgreSQL the dsn (first element of the triple) may look like:
    # 'DBI:Pg:host=host1;dbname=mail'
    # The SQL select clause to fetch per-recipient policy settings.
    # The %k will be replaced by a comma-separated list of query addresses
    # (e.g. full address, domain only, catchall). Use ORDER, if there
    # is a chance that multiple records will match - the first match wins.
    # If field names are not unique (e.g. 'id'), the later field overwrites the
    # earlier in a hash returned by lookup, which is why we use '*,users.id'.
    # No need to uncomment the following assignment if the default is ok.
    # $sql_select_policy = 'SELECT *,users.id FROM users,policy'.
    # ' WHERE (users.policy_id=policy.id) AND (users.email IN (%k))'.
    # ' ORDER BY users.priority DESC';
    # The SQL select clause to check sender in per-recipient whitelist/blacklist
    # The first SELECT argument '?' will be users.id from recipient SQL lookup,
    # the %k will be sender addresses (e.g. full address, domain only, catchall).
    # The default value is:
    # $sql_select_white_black_list = 'SELECT wb FROM wblist,mailaddr'.
    # ' WHERE (rid=?) AND (sid=mailaddr.id) AND (mailaddr.email IN (%k))'.
    # ' ORDER BY mailaddr.priority DESC';
    # To disable SQL white/black list, set to undef (otherwise comment-out
    # the following statement, leaving it at the default value):
    $sql_select_white_black_list = undef; # undef disables SQL white/blacklisting
    # If you decide to pass viruses (or spam) to certain recipients using the
    # above lookup tables or using $final_virus_destiny=1, you can set
    # the variable $addr_extension_virus ($addr_extension_spam) to some
    # string, and the recipient address will have this string appended
    # as an address extension to the local-part of the address. This extension
    # can be used by final local delivery agent to place such mail in different
    # folders. Leave these two variables undefined or empty strings to prevent
    # appending address extensions. Setting has no effect on recipient which will
    # not be receiving viruses/spam. Recipients who do not match lookup tables
    # local_domains* are not affected.
    # LDAs usually default to stripping away address extension if no special
    # handling is specified, so having this option enabled normally does no harm,
    # provided the $recipients_delimiter matches the setting on the final
    # MTA's LDA.
    # $addr_extension_virus = 'virus'; # (default is undef, same as empty)
    # $addr_extension_spam = 'spam'; # (default is undef, same as empty)
    # $addr_extension_banned = 'banned'; # (default is undef, same as empty)
    # Delimiter between local part of the recipient address and address extension
    # (which can optionally be added, see variables $addr_extension_virus and
    # $addr_extension_spam). E.g. recipient address <[email protected]> gets changed
    # to <[email protected]>.
    # Delimiter should match equivalent (final) MTA delimiter setting.
    # (e.g. for Postfix add 'recipient_delimiter = +' to main.cf)
    # Setting it to an empty string or to undef disables this feature
    # regardless of $addr_extension_virus and $addr_extension_spam settings.
    $recipient_delimiter = '+'; # (default is '+')
    # true: replace extension; false: append extension
    # $replace_existing_extension = 1; # (default is false)
    # Affects matching of localpart of e-mail addresses (left of '@')
    # in lookups: true = case sensitive, false = case insensitive
    $localpart_is_case_sensitive = 0; # (default is false)
    # ENVELOPE SENDER WHITELISTING / BLACKLISTING - GLOBAL (RECIPIENT-INDEPENDENT)
    # WHITELISTING: use ENVELOPE SENDER lookups to ENSURE DELIVERY from whitelisted
    # senders even if the message is recognized as spam. Effectively, for the
    # specified senders, message RECIPIENTS temporarily become 'spam_lovers', with
    # further processing being the same as otherwise specified for spam lovers.
    # It does not turn off inserting spam-related headers, if they are enabled.
    # BLACKLISTING: messages from specified SENDERS are DECLARED SPAM.
    # Effectively, for messages from blacklisted senders, spam level
    # is artificially pushed high, and the normal spam processing applies,
    # resulting in 'X-Spam-Flag: YES', high 'X-Spam-Level' bar and other usual
    # reactions to spam, including possible rejection. If the message nevertheless
    # still passes (e.g. for spam loving recipients), it is tagged as BLACKLISTED
    # in the 'X-Spam-Status' header field, but the reported spam value and
    # set of tests in this report header field (if available from SpamAssassin,
    # which may have not been called) is not adjusted.
    # A sender may be both white- and blacklisted at the same time,
    # settings are independent. For example, being both white- and blacklisted,
    # message is delivered to recipients, but is tagged as spam.
    # If ALL recipients of the message either white- or blacklist the sender,
    # spam scanning (calling the SpamAssassin) is bypassed, saving on time.
    # The following variables (lookup tables) are available, with the semantics
    # and syntax as specified in README.lookups:
    # %whitelist_sender, @whitelist_sender_acl, $whitelist_sender_re
    # %blacklist_sender, @blacklist_sender_acl, $blacklist_sender_re
    # SOME EXAMPLES:
    #ACL:
    # @whitelist_sender_acl = qw( .example.com );
    # @whitelist_sender_acl = ( ".$mydomain" ); # $mydomain and its subdomains
    # NOTE: This is not a reliable way of turning off spam checks for
    # locally-originating mail, as sender address can easily be faked.
    # To reliably avoid spam-scanning outgoing mail,
    # use @bypass_spam_checks_acl .
    #RE:
    # $whitelist_sender_re = new_RE(
    # qr'^postmaster@.*\bexample\.com$'i,
    # qr'^owner-[^@]*@'i, qr'-request@'i,
    # qr'\.example\.com$'i );
    $blacklist_sender_re = new_RE(
    qr'^(bulkmail|offers|cheapbenefits|earnmoney|foryou|greatcasino)@'i,
    qr'^(investments|lose_weight_today|market.alert|money2you|MyGreenCard)@'i,
    qr'^(new\.tld\.registry|opt-out|opt-in|optin|saveonlsmoking2002k)@'i,
    qr'^(specialoffer|specialoffers|stockalert|stopsnoring|wantsome)@'i,
    qr'^(workathome|yesitsfree|your_friend|greatoffers)@'i,
    qr'^(inkjetplanet|marketopt|MakeMoney)\d*@'i,
    #HASH lookup variant:
    # NOTE: Perl operator qw splits its argument string by whitespace
    # and produces a list. This means that addresses can not contain
    # whitespace, and there is no provision for comments within the string.
    # You can use the normal Perl list syntax if you have special requirements,
    # e.g. map {...} ('one user@bla', '.second.com'), or use read_hash to read
    # addresses from a file.
    # a hash lookup table can be read from a file,
    # one address per line, comments and empty lines are permitted:
    # read_hash(\%whitelist_sender, '/var/amavis/whitelist_sender');
    # ... or set directly:
    # $whitelist_sender{''} = 1; # don't spam-check MTA bounces
    map { $whitelist_sender{lc($_)}=1 } (qw(
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]
    returns.groups.yahoo.com
    # ENVELOPE SENDER WHITELISTING / BLACKLISTING - PER-RECIPIENT
    # The same semantics as for global white/blacklisting applies, but this
    # time each recipient (or its domain, or subdomain, ...) can be given
    # an individual lookup table for matching senders. The per-recipient lookups
    # override the global lookups, which serve as a fallback default.
    # Specify a two-level lookup table: the key for the outer table is recipient,
    # and the result should be an inner lookup table (hash or ACL or RE),
    # where the key used will be the sender.
    #$per_recip_blacklist_sender_lookup_tables = {
    # '[email protected]'=>new_RE(qr'^(inkjetplanet|marketopt|MakeMoney)\d*@'i),
    # '[email protected]'=>[qw( [email protected],org .d2.example,org )],
    #$per_recip_whitelist_sender_lookup_tables = {
    # '[email protected]' => [qw( [email protected] .other.example.org )],
    # '.my1.example.com' => [qw( !foe.other.example,org .other.example,org )],
    # '.my2.example.com' => read_hash('/var/amavis/my2-wl.dat'),
    # 'abuse@' => { 'postmaster@'=>1,
    # '[email protected]'=>1, '[email protected]'=>1 },
    # Section VI - Resource limits
    # Sanity limit to the number of allowed recipients per SMTP transaction
    # $smtpd_recipient_limit = 1000; # (default is 1000)
    # Resource limitations to protect against mail bombs (e.g. 42.zip)
    # Maximum recursion level for extraction/decoding (0 or undef disables limit)
    $MAXLEVELS = 14; # (default is undef, no limit)
    # Maximum number of extracted files (0 or undef disables the limit)
    $MAXFILES = 1500; # (default is undef, no limit)
    # For the cumulative total of all decoded mail parts we set max storage size
    # to defend against mail bombs. Even though parts may be deleted (replaced
    # by decoded text) during decoding, the size they occupied is _not_ returned
    # to the quota pool.
    # Parameters to storage quota formula for unpacking/decoding/decompressing
    # Formula:
    # quota = max($MIN_EXPANSION_QUOTA,
    # $mail_size*$MIN_EXPANSION_FACTOR,
    # min($MAX_EXPANSION_QUOTA, $mail_size*$MAX_EXPANSION_FACTOR))
    # In plain words (later condition overrules previous ones):
    # allow MAX_EXPANSION_FACTOR times initial mail size,
    # but not more than MAX_EXPANSION_QUOTA,
    # but not less than MIN_EXPANSION_FACTOR times initial mail size,
    # but never less than MIN_EXPANSION_QUOTA
    $MIN_EXPANSION_QUOTA = 100*1024; # bytes (default undef, not enforced)
    $MAX_EXPANSION_QUOTA = 300*1024*1024; # bytes (default undef, not enforced)
    $MIN_EXPANSION_FACTOR = 5; # times original mail size (must be specified)
    $MAX_EXPANSION_FACTOR = 500; # times original mail size (must be specified)
    # Section VII - External programs, virus scanners
    # Specify a path string, which is a colon-separated string of directories
    # (no trailing slashes!) to be assigned to the environment variable PATH
    # and to serve for locating external programs below.
    # NOTE: if $daemon_chroot_dir is nonempty, the directories will be
    # relative to the chroot directory specified;
    $path = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/bin:/bin';
    # Specify one string or a search list of strings (first match wins).
    # The string (or: each string in a list) may be an absolute path,
    # or just a program name, to be located via $path;
    # Empty string or undef (=default) disables the use of that external program.
    # Optionally command arguments may be specified - only the first substring
    # up to the whitespace is used for file searching.
    $file = 'file'; # file(1) utility; use 3.41 or later to avoid vulnerability
    $gzip = 'gzip';
    $bzip2 = 'bzip2';
    $lzop = 'lzop';
    $uncompress = ['uncompress', 'gzip -d', 'zcat'];
    $unfreeze = ['unfreeze', 'freeze -d', 'melt', 'fcat'];
    $arc = ['nomarch', 'arc'];
    $unarj = ['arj', 'unarj']; # both can extract, same options
    $unrar = ['rar', 'unrar']; # both can extract, same options
    $zoo = 'zoo';
    $lha = 'lha';
    $cpio = 'cpio';
    # SpamAssassin settings
    # $sa_local_tests_only is passed to Mail::SpamAssassin::new as a value
    # of the option local_tests_only. See Mail::SpamAssassin man page.
    # If set to 1, no tests that require internet access will be performed.
    $sa_local_tests_only = 1; # (default: false)
    #$sa_auto_whitelist = 1; # turn on AWL (default: false)
    $sa_mail_body_size_limit = 64*1024; # don't waste time on SA if mail is larger
    # (less than 1% of spam is > 64k)
    # default: undef, no limitations
    # default values, can be overridden by more specific lookups, e.g. SQL
    $sa_tag_level_deflt = -999; # add spam info headers if at, or above that level
    $sa_tag2_level_deflt = 3.0; # add 'spam detected' headers at that level
    $sa_kill_level_deflt = 22.0;
    #$sa_kill_level_deflt = $sa_tag2_level_deflt; # triggers spam evasive actions
    # at or above that level: bounce/reject/drop,
    # quarantine, and adding mail address extension
    # The $sa_tag_level_deflt, $sa_tag2_level_deflt and $sa_kill_level_deflt
    # may also be hashrefs to hash lookup tables, to make static per-recipient
    # settings possible without having to resort to SQL or LDAP lookups.
    # a quick reference:
    # tag_level controls adding the X-Spam-Status and X-Spam-Level headers,
    # tag2_level controls adding 'X-Spam-Flag: YES', and editing Subject,
    # kill_level controls 'evasive actions' (reject, quarantine, extensions);
    # it only makes sense to maintain the relationship:
    # tag_level <= tag2_level <= kill_level
    # string to prepend to Subject header field when message exceeds tag2 level
    $sa_spam_subject_tag = '*** JUNK MAIL ***'; # (defaults to undef, disables)
    # (only seen when spam is not to be rejected
    # and recipient is in local_domains*)
    $sa_spam_modifies_subj = 1; # may be a ref to a lookup table, default is true
    # Example: modify Subject for all local recipients except [email protected]
    #$sa_spam_modifies_subj = [qw( [email protected] . )];
    # @av_scanners is a list of n-tuples, where fields semantics is:
    # 1. av scanner plain name, to be used in log and reports;
    # 2. scanner program name; this string will be submitted to subroutine
    # find_external_programs(), which will try to find the full program
    # path name; if program is not found, this scanner is disabled.
    # Besides a simple string (full program path name or just the basename
    # to be looked for in PATH), this may be an array ref of alternative
    # program names or full paths - the first match in the list will be used;
    # As a special case for more complex scanners, this field may be
    # a subroutine reference, and the whole n-tuple is passed to it as args.
    # 3. command arguments to be given to the scanner program;
    # a substring {} will be replaced by the directory name to be scanned,
    # i.e. "$tempdir/parts"
    # 4. an array ref of av scanner exit status values, or a regexp (to be
    # matched against scanner output), indicating NO VIRUSES found;
    # 5. an array ref of av scanner exit status values, or a regexp (to be
    # matched against scanner output), indicating VIRUSES WERE FOUND;
    # Note: the virus match prevails over a 'not found' match, so it is safe
    # even if 4. matches for viruses too;
    # 6. a regexp (to be matched against scanner output), returning a list
    # of virus names found.
    # 7. and 8.: (optional) subroutines to be executed before and after scanner
    # (e.g. to set environment or current directory);
    # see examples for these at KasperskyLab AVP and Sophos sweep.
    # NOTES:
    # - NOT DEFINING @av_scanners (e.g. setting it to empty list, or deleting the
    # whole assignment) TURNS OFF LOADING AND COMPILING OF THE ANTIVIRUS CODE
    # (which can be handy if all you want to do is spam scanning);
    # - the order matters: although _all_ available entries from the list are
    # always tried regardless of their verdict, scanners are run in the order
    # specified: the report from the first one detecting a virus will be used
    # (providing virus names and scanner output); REARRANGE THE ORDER TO WILL;
    # - it doesn't hurt to keep an unused command line scanner entry in the list
    # if the program can not be found; the path search is only performed once
    # during the program startup;
    # CORROLARY: to disable a scanner that _does_ exist on your system,
    # comment out its entry or use undef or '' as its program name/path
    # (second parameter). An example where this is almost a must: disable
    # Sophos 'sweep' if you have its daemonized version Sophie or SAVI-Perl
    # (same for Trophie/vscan, and clamd/clamscan), or if another unrelated
    # program happens to have a name matching one of the entries ('sweep'
    # again comes to mind);
    # - it DOES HURT to keep unwanted entries which use INTERNAL SUBROUTINES
    # for interfacing (where the second parameter starts with \&).
    # Keeping such entry and not having a corresponding virus scanner daemon
    # causes an unnecessary connection attempt (which eventually times out,
    # but it wastes precious time). For this reason the daemonized entries
    # are commented in the distribution - just remove the '#' where needed.
    @av_scanners = (
    # ### http://www.vanja.com/tools/sophie/
    # ['Sophie',
    # \&ask_daemon, ["{}/\n", '/var/run/sophie'],
    # qr/(?x)^ 0+ ( : | [\000\r\n]* $)/, qr/(?x)^ 1 ( : | [\000\r\n]* $)/,
    # qr/(?x)^ [-+]? \d+ : (.*?) [\000\r\n]* $/ ],
    # ### http://www.csupomona.edu/~henson/www/projects/SAVI-Perl/
    # ['Sophos SAVI', \&sophos_savi ],
    # ### http://clamav.elektrapro.com/
    # ['Clam Antivirus-clamd',
    # \&ask_daemon, ["CONTSCAN {}\n", '/var/amavis/clamd'],
    # qr/\bOK$/, qr/\bFOUND$/,
    # qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
    # # NOTE: run clamd under the same user as amavisd,
    # # match the socket name in clamav.conf to the socket name in this entry
    # ### http://www.openantivirus.org/
    # ['OpenAntiVirus ScannerDaemon (OAV)',
    # \&ask_daemon, ["SCAN {}\n", '127.0.0.1:8127'],
    # qr/^OK/, qr/^FOUND: /, qr/^FOUND: (.+)/ ],
    # ### http://www.vanja.com/tools/trophie/
    # ['Trophie',
    # \&ask_daemon, ["{}/\n", '/var/run/trophie'],
    # qr/(?x)^ 0+ ( : | [\000\r\n]* $)/, qr/(?x)^ 1 ( : | [\000\r\n]* $)/,
    # qr/(?x)^ [-+]? \d+ : (.*?) [\000\r\n]* $/ ],
    # ### http://www.f-prot.com/
    # ['FRISK F-Prot Daemon',
    # \&ask_daemon,
    # ["GET {}/*?-dumb%20-archive HTTP/1.0\r\n\r\n",
    # ['127.0.0.1:10200','127.0.0.1:10201','127.0.0.1:10202',
    # '127.0.0.1:10203','127.0.0.1:10204'] ],
    # qr/(?i)<summary[^>]*>clean<\/summary>/,
    # qr/(?i)<summary[^>]*>infected<\/summary>/,
    # qr/(?i)<name>(.+)<\/name>/ ],
    ['KasperskyLab AntiViral Toolkit Pro (AVP)', ['avp','kavscanner'],
    "-* -P -B -Y -O- {}", [0,3,8], [2,4], # any use for -A -K ?
    qr/infected: (.+)/,
    sub {chdir('/opt/AVP') or die "Can't chdir to AVP: $!"},
    sub {chdir($TEMPBASE) or die "Can't chdir back to $TEMPBASE $!"},
    ['KasperskyLab AVPDaemonClient',
    [ '/opt/AVP/kavdaemon', 'kavdaemon',
    '/opt/AVP/AvpDaemonClient', 'AvpDaemonClient',
    '/opt/AVP/AvpTeamDream', 'AvpTeamDream',
    '/opt/AVP/avpdc', 'avpdc' ],
    '{}', [0,8], [3,4,5,6], qr/infected: ([^\r\n]+)/ ],
    # change the startup-script in /etc/init.d/kavd to:
    # DPARMS="-I0 -Y -* /var/amavis"
    # adjusting /var/amavis above to match your $TEMPBASE.
    # NOTE: cd /opt/AVP/DaemonClients; configure; cd Sample; make
    # cp AvpDaemonClient /opt/AVP/
    ### http://www.hbedv.com/ or http://www.centralcommand.com/
    ['H+BEDV AntiVir or CentralCommand Vexira Antivirus',
    ['antivir','vexira'],
    '--allfiles -noboot -nombr -rs -s -z {}', [0], qr/ALERT:|VIRUS:/,
    qr/(?x)^\s* (?: ALERT: \s* (?: \[ | [^']* ' ) |
    (?i) VIRUS:\ .*?\ virus\ '?) ( [^\]\s']+ )/ ],
    # NOTE: remove the -z if you only have a demo version
    ### http://www.commandsoftware.com/
    ['Command AntiVirus for Linux', 'csav',
    '-all -archive -packed {}', [50], [51,52,53],
    qr/Infection: (.+)/ ],
    ### http://www.symantec.com/
    ['Symantec CarrierScan via Symantec CommandLineScanner',
    ['cscmdline','savsecls'],
    '-a scan -i 1 -v -s 127.0.0.1:7777 {}',
    qr/Files Infected: 0/, qr/^Infected: /,
    qr/Info:\s+(.+)/ ],
    ### http://drweb.imshop.de/
    ['DrWeb Antivirus for Linux/FreeBSD/Solaris', 'drweb',
    '-al -ar -fm -go -ha -ml -ot -sd -up {}',
    [0], [1], sub {('no-name')} ],
    ### http://www.f-secure.com/products/anti-virus/
    ['F-Secure Antivirus', 'fsav',
    '--dumb --archive {}', [0], [3,8],
    qr/(?:infection|Infected): (.+)/ ],
    ['CAI InoculateIT', 'inocucmd',
    '-sec -nex {}', [0], [100],
    qr/was infected by virus (.+)/ ],
    ['MkS_Vir for Linux (beta)', ['mks32','mks'],
    '-s {}/*', [0], [1,2],
    qr/--[ \t]*(.+)/ ],
    ['MkS_Vir daemon',
    'mksscan', '-s -q {}', [0], [1..7],
    qr/^... (\S+)/ ],
    ### http://www.nod32.com/
    ['ESET Software NOD32', 'nod32',
    '-all -subdir+ {}', [0], [1,2],
    qr/^.+? - (.+?)\s*(?:backdoor|joke|trojan|virus|worm)/ ],
    ### http://www.nod32.com/
    ['ESET Software NOD32 - Client/Server Version', 'nod32cli',
    '-a -r -d recurse --heur standard {}', [0], [10,11],
    qr/^\S+\s+infected:\s+(.+)/ ],
    ### http://www.norman.com/products_nvc.shtml
    ['Norman Virus Control v5 / Linux', 'nvccmd',
    '-c -l:0 -s -u {}', [0], [1],
    qr/(?i).* virus in .* -> \'(.+)\'/ ],
    ### http://www.pandasoftware.com/
    ['Panda Antivirus for Linux', ['pavcl','pavc'],
    '-aut -aex -heu -cmp -nor -nso -eng {}',
    qr/Number of files infected\.*: 0(?!\d)/,
    qr/Number of files infected\.*: 0*[1-9]/,
    qr/Found virus :\s*(\S+)/ ],
    # Check your RAV license terms before fiddling with the following two lines!
    # ['GeCAD RAV AntiVirus 8', 'ravav',
    # '--all --archive --mail {}', [1], [2,3,4,

    You are welcome. I'm glad you got it back up.
    (1) You say you did the symbolic link. I will assume this is set correctly; it's very important that it is.
    (2) I don't know what you mean by "Been feeding the [email protected] for several weeks now, 700 emails each day at least." After the initial training period, SpamAssassin doesn't learn from mail it has already processed correctly. At this point, you only need to teach SpamAssassin when it is wrong. [email protected] should only be getting spam that is being passed as clean. Likewise, [email protected] should only be getting legitimate mail that is being flagged as junk. You are redirecting mail to both [email protected] and [email protected] ... right? SpamAssassin needs both.
    (3) Next, as I said before, you need to implement those "Frontline spam defense for Mac OS X Server." Once you have that done and issue "postfix reload" you can look at your SMTP log in Server Admin and watch as Postfix blocks one piece of junk mail after another. It's kind of cool.
    (4) Add some SARE rules:
    Visit http://www.rulesemporium.com/rules.htm and download the following rules:
    70sareadult.cf
    70saregenlsubj0.cf
    70sareheader0.cf
    70sarehtml0.cf
    70sareobfu0.cf
    70sareoem.cf
    70sarespoof.cf
    70sarestocks.cf
    70sareunsub.cf
    72sare_redirectpost
    Visit http://www.rulesemporium.com/other-rules.htm and download the following rules:
    backhair.cf
    bogus-virus-warnings.cf
    chickenpox.cf
    weeds.cf
    Copy these rules to /etc/mail/spamassassin/
    Then stop and restart mail services.
    There are other things you can do, and you'll find differing opinions about such things. In general, I think implementing the "Frontline spam defense for Mac OS X Server" and adding the SARE rules will help a lot. Good luck!

  • Hotkey (Ctrl+B) is not working after migration from Forms 6i to 10g

    Dear Gurus,
    Need your help regarding the following problem:
    After migrating from Forms 6i to 10g (Rel 2), Ctrl+B (used to list the blocks in a form) hotkey is not working anymore (all other hotkeys are working fine). I've checked my FMRWEB.RES and it contains an entry for Ctrl+B:
    66 : 2 : "Ctrl+B" : 70 : "Block Menu"
    Additional Information:
    OS: AIX
    NLS_LANG = UTF8
    fmrweb_utf8.res also contains the same text for Ctrl+B as above.
    I tried to reproduce it on my Windows Machine (with NLS_LANG set to AMERICAN_AMERICA.WE8ISO8859P1) and its not working as well. I don't have right to put move files on AIX server but i can try anything (on my local system) suggested by the Oracle gurus.
    Best Regards,

    Dear Gerd,
    "are you sure, that it is the hotkey"
    Yes, i am dead sure. Since:
    (1) It was working fine in forms 6i
    (2) If you run a form and select Help => Keys, you will see Ctrl+B on the top of list
    The problem is its not taking into account the keys which i am defining in the file (although i am following the same procedure detailed on metalink.oracle.com).
    Regards

  • Spry Menu not working correctly

    Hopefully this is the right part of the forum to post this question, if not, I apologize.
    I have created a site in dreamweaver and am using a single Spry Menu Bar. I have read tons of forum postings about Drop down menus not working in IE, however, mine don't work in any browser or in the Live View either. I have a feeling it has something to do with either the div containing the menu bar or the sizing, but I can't tell.  Please help.
    ul.MenuBarHorizontal
              margin: 0;
              padding: 0;
              list-style-type: none;
              font-size:17px;
              font-family:Tahoma, Geneva, sans-serif;
              cursor: default;
              width: 100%;
    /* Set the active Menu Bar with this class, currently setting z-index to accomodate IE rendering bug: http://therealcrisp.xs4all.nl/meuk/IE-zindexbug.html */
    ul.MenuBarActive
              z-index: 1000;
    /* Menu item containers, position children relative to this container and are a fixed width */
    ul.MenuBarHorizontal li
              margin: 0;
              padding: 0;
              list-style-type: none;
              font-size:100%;
              position: relative;
              text-align: left;
              cursor: pointer;
              width:6.8em;
              height:3.5em;
              float: left;
    /* Submenus should appear below their parent (top: 0) with a higher z-index, but they are initially off the left side of the screen (-1000em) */
    ul.MenuBarHorizontal ul
              margin: 0;
              padding: 0;
              list-style-type: none;
              font-size:100%;
              z-index: 1020;
              cursor: default;
              width: 8.2em;
              position: absolute;
              left: -1000em;
    /* Submenu that is showing with class designation MenuBarSubmenuVisible, we set left to auto so it comes onto the screen below its parent menu item */
    ul.MenuBarHorizontal ul.MenuBarSubmenuVisible
              left: auto;
    /* Menu item containers are same fixed width as parent */
    ul.MenuBarHorizontal ul li
              width: 8.2em;
    /* Submenus should appear slightly overlapping to the right (95%) and up (-5%) */
    ul.MenuBarHorizontal ul ul
              position: absolute;
              margin: -5% 0 0 95%;
    /* Submenu that is showing with class designation MenuBarSubmenuVisible, we set left to 0 so it comes onto the screen */
    ul.MenuBarHorizontal ul.MenuBarSubmenuVisible ul.MenuBarSubmenuVisible
              left: auto;
              top: 0;
    DESIGN INFORMATION: describes color scheme, borders, fonts
    /* Submenu containers have borders on all sides */
    ul.MenuBarHorizontal ul
              border: 1px solid #CCC;
    /* Menu items are a light gray block with padding and no text decoration */
    ul.MenuBarHorizontal a
              display: block;
              cursor: pointer;
              background-color: #CCC;
              padding: 0.7em 0.5em;
              color: #333;
              text-decoration: none;
    /* Menu items that have mouse over or focus have a blue background and white text */
    ul.MenuBarHorizontal a:hover, ul.MenuBarHorizontal a:focus
              background-color: #33C;
              color: #FFF;
    /* Menu items that are open with submenus are set to MenuBarItemHover with a blue background and white text */
    ul.MenuBarHorizontal a.MenuBarItemHover, ul.MenuBarHorizontal a.MenuBarItemSubmenuHover, ul.MenuBarHorizontal a.MenuBarSubmenuVisible
              background-color: #33C;
              color: #FFF;
    SUBMENU INDICATION: styles if there is a submenu under a given menu item
    /* Menu items that have a submenu have the class designation MenuBarItemSubmenu and are set to use a background image positioned on the far left (95%) and centered vertically (50%) */
    ul.MenuBarHorizontal a.MenuBarItemSubmenu
              background-image: url(SpryMenuBarDown.gif);
              background-repeat: no-repeat;
              background-position: 95% 50%;
    /* Menu items that have a submenu have the class designation MenuBarItemSubmenu and are set to use a background image positioned on the far left (95%) and centered vertically (50%) */
    ul.MenuBarHorizontal ul a.MenuBarItemSubmenu
              background-image: url(SpryMenuBarRight.gif);
              background-repeat: no-repeat;
              background-position: 95% 50%;
    /* Menu items that are open with submenus have the class designation MenuBarItemSubmenuHover and are set to use a "hover" background image positioned on the far left (95%) and centered vertically (50%) */
    ul.MenuBarHorizontal a.MenuBarItemSubmenuHover
              background-image: url(SpryMenuBarDownHover.gif);
              background-repeat: no-repeat;
              background-position: 95% 50%;
    /* Menu items that are open with submenus have the class designation MenuBarItemSubmenuHover and are set to use a "hover" background image positioned on the far left (95%) and centered vertically (50%) */
    ul.MenuBarHorizontal ul a.MenuBarItemSubmenuHover
              background-image: url(SpryMenuBarRightHover.gif);
              background-repeat: no-repeat;
              background-position: 95% 50%;
    BROWSER HACKS: the hacks below should not be changed unless you are an expert
    /* HACK FOR IE: to make sure the sub menus show above form controls, we underlay each submenu with an iframe */
    ul.MenuBarHorizontal iframe
              position: absolute;
              z-index: 1010;
              filter:alpha(opacity:0.1);
    /* HACK FOR IE: to stabilize appearance of menu items; the slash in float is to keep IE 5.0 from parsing */
    @media screen, projection
              ul.MenuBarHorizontal li.MenuBarItemIE
                        display: inline;
                        float: left;
                        background: #FFF;
    Here is the code for the page
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <script language="javascript" type="text/javascript" src="http://www.onbile.com/websites/41ea989914d81eb7bd2e415141cd40fe"></script>
    <script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>GuitarFusion.com - Play. Learn. Make Music</title>
    <link href="guitarfusionblogstyle.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript">
    function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    function MM_preloadImages() { //v3.0
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    </script>
    <!--[if lt IE 7.]>
    <script defer type="text/javascript" src="pngfix.js"></script>
    <![endif]-->
    <script type="text/javascript">
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-15280994-2']);
      _gaq.push(['_trackPageview']);
      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    </script>
    <link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
    </head>
    <body onload="MM_preloadImages('images/homeOver.jpg','images/BioOver.jpg','images/LearnOver.jpg ','images/LessonsOver.jpg','images/ContactOver.jpg')">
    <div id="wrapper">
    <div id="header">
    <div id="logo"></div>
    <div id="social"><a href="http://www.facebook.com/pages/Guitarfusion/208575872514732"><img src="../images/facebook_32.png" width="32" height="32" alt="Facebook" border="0"/></a><a href="http://www.linkedin.com/in/sammills"><img src="../images/linkedin_32.png" width="32" height="32" alt="Linkedin" border="0" /></a><a href="http://www.myspace.com/lucid77"><img src="../images/myspace_32.png" width="32" height="32" alt="Myspace" border="0" /></a><a href="http://twitter.com/#!/guitarfusion"><img src="../images/twitter_32.png" width="32" height="32" alt="Twitter" border="0"></a><a href="http://www.guitarfusion.com/blog"><img src="../images/wordpress_32.png" width="32" height="32" alt="Wordpress" border="0"/></a><a href="http://www.youtube.com/guitarfusiondotcom"><img src="../images/youtube_32.png" width="32" height="32" alt="Youtube" border="0" /></a></div>
    <!-- Old Nav
    <div id="nav"><a href="index.php" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Home','','images/homeOver.jpg',1)"><img src="images/home.jpg" alt="Home" name="Home" width="97" height="45" border="0" id="Home" /></a><a href="biography.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Bio','','images/BioOver.jpg',1)"><img src="images/Bio.jpg" alt="Biography" name="Bio" width="97" height="45" border="0" id="Bio" /></a><a href="learn.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Learn','','images/LearnOver.jpg',1)"><img src="images/Learn.jpg" alt="Learn Online" name="Learn" width="97" height="45" border="0" id="Learn" /></a>    <a href="lessons.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Lessons','','images/LessonsOver.jpg',1)"><img src="images/Lessons.jpg" alt="Lessons" name="Lessons" width="109" height="45" border="0" id="Lessons" /></a>    <a href="contact.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Contact','','images/ContactOver.jpg',1)"><img src="images/Contact.jpg" alt="Contact" name="Contact" width="126" height="45" border="0" id="Contact" /></a></div>
    End Old Nav -->
    <div id="navdropdown">
      <ul id="MenuBar1" class="MenuBarHorizontal">
        <li><a href="#">Home</a>      </li>
        <li><a href="#" class="MenuBarItemSubmenu">About Me</a>
          <ul>
            <li><a href="#" title="A little about myself.">Biography</a></li>
            <li><a href="#">Cirriculum Vitae</a></li>
            <li><a href="#" title="See me play or teach.">Mp3 &amp; Videos</a></li>
            <li><a href="#" title="Where am I am playing?">Performances</a></li>
            <li><a href="#" title="Want me to play your event or party?">Booking</a></li>
          </ul>
        </li>
        <li><a class="MenuBarItemSubmenu" href="#">Lessons</a>
          <ul>
            <li><a href="#" title="What will you learn?">Syllabus</a>          </li>
            <li><a href="#" title="How much does this cost?">Pricing</a></li>
            <li><a href="#" title="Where do lessons take place?">Locations</a></li>
            <li><a href="#" title="What books and supplies will you need?"> Books &amp; Supplies</a></li>
    </ul>
        </li>
        <li><a href="#" class="MenuBarItemSubmenu">Learn Online</a>
          <ul>
            <li><a href="#">Guitar</a></li>
            <li><a href="#">Bass</a></li>
          </ul>
        </li>
        <li><a href="#" class="MenuBarItemSubmenu">Contact</a>
          <ul>
            <li><a href="#">Email </a></li>
            <li><a href="#" title="Facebook, Twitter, Etc..">Social Media</a></li>
          </ul>
        </li>
      </ul>
    </div>
    </div>
    <div id="content">
      <div id="blog_header"></div>
    <div id="sidebar">
    <form method=post action="http://poll.pollcode.com/Vp1c"><table border=0 width=150 bgcolor="#ffffff" cellspacing=0 cellpadding=2><tr><td colspan=2><font face="Verdana" size=-1 color="teal"><center><b>Most useful video lesson topics:</b></center></font></td></tr><tr><td width=5><input type=radio name=answer value="1"></td><td><font face="Verdana" size=-1 color="000000">Open Chords</font></td></tr><tr><td width=5><input type=radio name=answer value="2"></td><td><font face="Verdana" size=-1 color="000000">Barre Chords</font></td></tr><tr><td width=5><input type=radio name=answer value="3"></td><td><font face="Verdana" size=-1 color="000000">Scales</font></td></tr><tr><td width=5><input type=radio name=answer value="4"></td><td><font face="Verdana" size=-1 color="000000">Arpeggios</font></td></tr><tr><td width=5><input type=radio name=answer value="5"></td><td><font face="Verdana" size=-1 color="000000">Music Reading</font></td></tr><tr><td width=5><input type=radio name=answer value="6"></td><td><font face="Verdana" size=-1 color="000000">Picking Technique</font></td></tr><tr><td width=5><input type=radio name=answer value="7"></td><td><font face="Verdana" size=-1 color="000000">Strumming Patterns</font></td></tr><tr><td width=5><input type=radio name=answer value="8"></td><td><font face="Verdana" size=-1 color="000000">Tab Reading</font></td></tr><tr><td width=5><input type=radio name=answer value="9"></td><td><font face="Verdana" size=-1 color="000000">Songwriting</font></td></tr><tr><td width=5><input type=radio name=answer value="10"></td><td><font face="Verdana" size=-1 color="000000">Improvisation</font></td></tr><tr><td width=5><input type=radio name=answer value="11"></td><td><font face="Verdana" size=-1 color="000000">Triads</font></td></tr><tr><td colspan=2><center><input type=submit value="Vote">  <input type=submit name=view value="View"></center></td></tr><tr><td bgcolor="white" colspan=2 align=right><font face="Verdana" size=-2 color="black">pollcode.com <a href=http://pollcode.com/><font color="navy">free polls</font></a></font></td></tr></table></form><a href="./studies.html">
    <img src="images/studies.jpg" border="0" /></a><br/><br/>
    <script src="http://widgets.twimg.com/j/2/widget.js"></script>
    <script>
    new TWTR.Widget({
      version: 2,
      type: 'profile',
      rpp: 4,
      interval: 6000,
      width: 'auto',
      height: 200,
      theme: {
        shell: {
          background: '#aee5f5',
          color: '#4b508f'
        tweets: {
          background: '#dbdbdb',
          color: '#333333',
          links: '#336699'
      features: {
        scrollbar: true,
        loop: false,
        live: false,
        hashtags: true,
        timestamp: true,
        avatars: false,
        behavior: 'all'
    }).render().setUser('guitarfusion').start();
    </script></font><br/>
    <div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like-box href="http://www.facebook.com/pages/Guitarfusion/208575872514732" width="200" show_faces="true" border_color="" stream="true" header="true"></fb:like-box>
    </div>
    <div id="blog">
    <?php
    /* Short and sweet */
    define('WP_USE_THEMES', false);
    require('./blog/wp-blog-header.php');
    ?>
    <?php
    require('./blog/wp-blog-header.php');
    ?>
    <?php
    $posts = get_posts('numberposts=10&order=ASC&orderby=post_title');
    foreach ($posts as $post) : start_wp(); ?>
    <?php the_date(); echo "<br />"; ?>
    <h2><?php the_title(); ?>    </h2>
    <?php the_content() ?>
    <a class="bloglink" href="<?php the_permalink() ?>">
    Read more...</a><br />
    <?php
    endforeach;
    ?>
    </div>
    <div id="ad_middle"></div>
    <div id="blog_bottom2">
    <h1> Free Stuff</h1>
    <br/>
    <ul>
    <li><a href="http://www.metronomeonline" target="_new">Online Metronome</a> - Metronomes are a great tool to use during practice to keep a steady tempo and to help increase speed of passages. Use this online metronome if you do not already have a stand alone metronome.</li><br/>
    <li><a href="http://itunes.apple.com/us/app/id347846503">Iphone / Itouch Metronome</a> - This is an example of several free metronome apps that are available for your phone. Android users can also find free metronomes on the Marketplace. Be sure and read the ratings, some are better at keeping time than others.</li><br/>
    <li><a href="https://market.android.com/details?id=com.pedrocorp.android.guitar&feature=search_result">Android Phone Metronome / Tuner / Chord Dictionary</a>This handy little app will not only provide you with a tuner, but has a built-in metronome and chord dictionary. - </li><br/>
    <li><a href="http://tuxguitar.herac.com.ar/" target="_new">Free Guitar Tab Editor</a> - View / Create Tab - Free alternative to GuitarPro Software. Use this software to open .gp3, .gp4, .gp5 files and search for music online.</li><br/>
    <li><a href="http://www.blanksheetmusic.net/">Free Blank Sheet Music</a> - Print blank sheet music. Choose from standard notation, treble, bass, alto clefs, and tablature. </li><br/>
    <li><a href="http://www.911tabs.com/">Free Tablature Search Engine</a> - This is a great search engine to find tabs. I mainly use this to find .gp5 files for my Tux Guitar Software. </li>
    </ul>
    </div>
    <div id="blog_bottom"><span style="float:left;">
    <img src="images/mapad.jpg" /></span>
    <iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?q=1060+West+State+Road+434,+Longwood,+FL&sll=28.697815,-81.364 128&hl=en&sspn=0.006295,0.006295&ie=UTF8&hq=&hnear=1060+Florida+434,+Longwood,+Florida+327 50&ll=28.70572,-81.364145&spn=0.026349,0.036478&z=14&iwloc=A&output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?q=1060+West+State+Road+434,+Longwood,+FL&sll=28.697815,-81.364 128&hl=en&sspn=0.006295,0.006295&ie=UTF8&hq=&hnear=1060+Florida+434,+Longwood,+Florida+327 50&ll=28.70572,-81.364145&spn=0.026349,0.036478&z=14&iwloc=A&source=embed" style="color:#0000FF;text-align:right">View Larger Map</a></small>
    </div>
    </div>
    <div id="footer">
    <ul>
    <li><a href="../index.html">Home</a></li>
    <li><a href="../biography.html">Biography</a></li>
    <li><a href="../learn.html">Learn Guitar</a></li>
    <li><a href="../Lessons.html">Guitar Lessons</a></li>
    <li><a href="../contact.html">Schedule Lessons</a></li>
    <li><a href="mailto:[email protected]">Contact Webmaster</a></li>
    </ul>
    &copy; 2006-2011 Guitarfusion.com All Rights Reserved. Unauthorized Use Prohibited.
    </div>
    </div>
    </body>
    </html>
    And here is the code for the index.php's css
    body {
              background-color: #ff9933;
              font-family:Verdana, Geneva, sans-serif;
              font-size:11px;
    p {
              text-align:center;
              text-indent:15px;
    #wrapper {
              width:960px;
              height:100%;
              margin-left:30px;
              position:absolute;
    #header {
              width:960px;
              height:310px;
              background-image: url(images/gfheader.gif);
              background-position:center;
              background-repeat:no-repeat;
              position:relative;
              z-index:0;
    #logo {
              height:242px;
              width:235px;
              background-image:url(images/GuitarFusionLogo.gif);
              position:relative;
              top:40px;
              left:80px;
              z-index:1;
              visibility:hidden;
    #nav {
              width:600px;
              height:45px;
              z-index:2;
              position:relative;
              top:12px;
              left:290px;
              visibility:hidden;
    #navdropdown {
              background-color:#999;
              width:600px;
              height:45px;
              z-index:3;
              position:relative;
              top:12px;
              left:290px;
    #content {
              width:840px;
              height:1800px;
              background-color:#fff;
              position:relative;
              margin-left:60px;
    #social {
              width:195px;
              height:32px;
              border:none;
              position:relative;
              text-align:right;
              bottom:25px;
              right:65px;
              float:right;
              z-index:3;
              visibility:hidden;
    .social {
              margin-left:50px;
    #blog {
              width:600px;
              height:500px;
              border: thin solid #000;
              position:relative;
              top:15px;
              left:15px;
              float:left;
              z-index:1;
              overflow:auto;
              background-color:#d6e8f7;
    #blog_header {
              width:625px;
              height:45px;
              background-Image:url(images/blogheader.gif);
              position:relative;
              top:20px;
              left:5px;
              z-index:2;
              float:left;
    .nav {
              margin-left:20px;
    #sidebar {
              width:200px;
              height:1500px;
              border:none;
              left:-10px;
              top:10px;
              position:relative;
              float:right;
    #ad_middle {
              width:600px;
              height:200px;
              border: thin solid #000;
              position:relative;
              top:15px;
              left:15px;
              z-index:1;
              overflow:auto;
              float:left;
              background-color:#EFF5E9;
              background-image:url(images/lessonsad.jpg);
              background-repeat:no-repeat;
              background-position:center;
    #blog_bottom {
              width:600px;
              height:370px;
              border: thin solid #000;
              position:relative;
              top:15px;
              left:15px;
              z-index:1;
              overflow:auto;
              float:left;
              background-color:#F6F6F6;
    #contentwrapper {
              width:650px;
              height:500px;
              position:relative;
              top:50px;
              float:left;
              margin-left:95px;
    #header_content {
              width:624px;
              height:43px;
              background-image:url(images/Header.gif);
              text-align:center;
              font-size:28px;
              font-family:"Palatino Linotype", "Book Antiqua", Palatino, serif;
              line-height:40px;
              color:#FFF;
              position:relative;
              left:10px;
    #bio_content {
              width:600px;
              height:1000px;
    .biopic {
              float:left;}
    #learn_content {
              width:600px;
              height:100%;
    #faq {
              width:700px;
              height:600px;
              background-color:#f8f8f8;
              border:thin solid #000;
              margin-left:60px;
    #books {
              width:750px;
              height:700px;
              position:relative;
              float:left;
              margin-left:35px;
    fieldset {
    margin: 1em 0;
    padding: 1em;
    border : 1px solid #ccc;
    background: #f8f8f8;
    legend {
    font-weight: bold;
    #form_content {
              position:relative;
              left:160px;
              height:880px;
              width:500px;
              text-align:center;
              background-color:#E7EFFF;
              border:double #900;
    form div {
              background-color:#f8f8f8;
              padding:0px;
              margin:0px;
    #footer {
              width:960px;
              height:40px;
              bottom:0px;
              position:relative;
              text-align:center;
              line-height:1px;
              font-size:10px;
              padding-bottom:10px;
    #footer ul li {
              display:inline;
              margin:20px;
    #footer ul li a {
              text-decoration:none;}
              #blog_bottom2 {
              width:600px;
              height:370px;
              border: thin solid #000;
              position:relative;
              top:15px;
              left:15px;
              z-index:1;
              overflow:auto;
              float:left;
              background-color:#F6F6F6;
              text-align:center;
    #studies{
                        width:600px;
                        height:800px;
                        position:relative;
                        margin-left:110px;
                        text-align:center;
                        background:#f8f8f8;
    #blog_bottom2 ul li
              {list-style-type:none
    Any help is appreciated.

    You do not have a constructor for the menu bar as in
    <script type="text/javascript">
    var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgDown:"SpryAssets/SpryMenuBarDownHover.gif", imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
    </script>
    There are too many mistakes in the JS outside of the Spry Menu Bar. Have a look at the following which includes all errors, not just the JS
    Validation Output:   117 Errors
      Line 21, Column 38: character "&" is the first character of a delimiter but occurred as data   var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=… ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 21, Column 40: cannot generate system identifier for general entity "i" … var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=… ✉  
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
      Line 21, Column 40: general entity "i" not defined and no default entity … var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 41: reference not terminated by REFC delimiter …var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x… ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 21, Column 41: reference to entity "i" for which no system identifier could be generated …var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 39: entity was defined here   var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=…
      Line 21, Column 50: character "&" not allowed in attribute specification list …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
      Line 21, Column 50: element "a.length" undefined …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    You have used the element named above in your document, but the document type you are using does not define an element of that name. This error is often caused by:
    incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Frameset" document type to get the "<frameset>" element),
    by using vendor proprietary extensions such as "<spacer>" or "<marquee>" (this is usually fixed by using CSS to achieve the desired effect instead).
    by using upper-case tags in XHTML (in XHTML attributes and elements must be all lower-case).
      Line 21, Column 51: character "&" is the first character of a delimiter but occurred as data …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 21, Column 60: character "&" is the first character of a delimiter but occurred as data …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 21, Column 62: cannot generate system identifier for general entity "x.oSrc" …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
      Line 21, Column 62: general entity "x.oSrc" not defined and no default entity …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 68: reference to entity "x.oSrc" for which no system identifier could be generated …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 61: entity was defined here …,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
      Line 29, Column 76: character ";" not allowed in attribute specification list …  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) ✉  
      Line 29, Column 76: element "a.length" undefined …  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) ✉  
    You have used the element named above in your document, but the document type you are using does not define an element of that name. This error is often caused by:
    incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Frameset" document type to get the "<frameset>" element),
    by using vendor proprietary extensions such as "<spacer>" or "<marquee>" (this is usually fixed by using CSS to achieve the desired effect instead).
    by using upper-case tags in XHTML (in XHTML attributes and elements must be all lower-case).
      Line 41, Column 57: character "&" is the first character of a delimiter but occurred as data …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 41, Column 59: cannot generate system identifier for general entity "parent.frames.length" …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { ✉  
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
      Line 41, Column 59: general entity "parent.frames.length" not defined and no default entity …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 41, Column 79: reference not terminated by REFC delimiter …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 41, Column 79: reference to entity "parent.frames.length" for which no system identifier could be generated …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 41, Column 58: entity was defined here …var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
      Line 45, Column 15: character "&" is the first character of a delimiter but occurred as data   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms… ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 45, Column 17: cannot generate system identifier for general entity "d.all"   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms… ✉  
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
      Line 45, Column 17: general entity "d.all" not defined and no default entity   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 45, Column 22: reference not terminated by REFC delimiter   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms… ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 45, Column 22: reference to entity "d.all" for which no system identifier could be generated   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 45, Column 16: entity was defined here   if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms…
      Line 45, Column 47: character "&" is the first character of a delimiter but occurred as data …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 45, Column 50: reference not terminated by REFC delimiter …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 45, Column 50: reference to entity "i" for which no system identifier could be generated …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 39: entity was defined here   var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=…
      Line 45, Column 65: character ";" not allowed in attribute specification list …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; ✉  
      Line 45, Column 65: element "d.forms.length" undefined …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; ✉  
    You have used the element named above in your document, but the document type you are using does not define an element of that name. This error is often caused by:
    incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Frameset" document type to get the "<frameset>" element),
    by using vendor proprietary extensions such as "<spacer>" or "<marquee>" (this is usually fixed by using CSS to achieve the desired effect instead).
    by using upper-case tags in XHTML (in XHTML attributes and elements must be all lower-case).
      Line 47, Column 13: character "&" is the first character of a delimiter but occurred as data   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 47, Column 15: cannot generate system identifier for general entity "d.layers"   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
      Line 47, Column 15: general entity "d.layers" not defined and no default entity   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 47, Column 23: reference not terminated by REFC delimiter   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 47, Column 23: reference to entity "d.layers" for which no system identifier could be generated   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 47, Column 14: entity was defined here   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum…
      Line 47, Column 23: character "&" is the first character of a delimiter but occurred as data   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 47, Column 26: reference not terminated by REFC delimiter   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    If you meant to include an entity that starts with "&", then you should terminate it with ";".  Another reason for this error message is that you inadvertently created an entity by failing to escape an "&" character just before this text.
      Line 47, Column 26: reference to entity "i" for which no system identifier could be generated   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum… ✉  
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
      Line 21, Column 39: entity was defined here   var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=…
      Line 47, Column 42: character ";" not allowed in attribute specification list …or(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].documen… ✉  
      Line 47, Column 42: element "d.layers.length" undefined …or(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].documen… ✉  
    You have used the element named above in your document, but the document type you are using does not define an element of that name. This error is often caused by:
    incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Frameset" document type to get the "<frameset>" element),
    by using vendor proprietary extensions such as "<spacer>" or "<marquee>" (this is usually fixed by using CSS to achieve the desired effect instead).
    by using upper-case tags in XHTML (in XHTML attributes and elements must be all lower-case).
      Line 49, Column 9: character "&" is the first character of a delimiter but occurred as data   if(!x && d.getElementById) x=d.getElementById(n); return x; ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 49, Column 10: character "&" is the first character of a delimiter but occurred as data   if(!x && d.getElementById) x=d.getElementById(n); return x; ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 59, Column 76: character "<" is the first character of a delimiter but occurred as data …=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) ✉  
    This message may appear in several cases:
    You tried to include the "<" character in your page: you should escape it as "&lt;"
    You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
    Another possibility is that you forgot to close quotes in a previous tag.
      Line 65, Column 9: end tag for "d.layers.length" omitted, but OMITTAG NO was specified </script> ✉  
    You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
      Line 47, Column 26: start tag was here   for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].docum…
      Line 65, Column 9: end tag for "d.forms.length" omitted, but OMITTAG NO was specified </script> ✉  
    You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
      Line 45, Column 50: start tag was here …x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      Line 65, Column 9: end tag for "a.length" omitted, but OMITTAG NO was specified </script> ✉  
    You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
      Line 29, Column 67: start tag was here …  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
      Line 65, Column 9: end tag for "a.length" omitted, but OMITTAG NO was specified </script> ✉  
    You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
      Line 21, Column 41: start tag was here …var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x…
      Line 121, Column 579: end tag for "img" omitted, but OMITTAG NO was specified …ight="32" alt="Twitter" border="0"></a><a href="http://www.guitarfusion.com/bl… ✉  
    You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
      Line 121, Column 492: start tag was here …="http://twitter.com/#!/guitarfusion"><img src="../images/twitter_32.png" widt…
      Line 225, Column 14: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified <form method=post action="http://poll.pollcode.com/Vp1c"><table border=0 width=… ✉  
      Line 225, Column 72: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …poll.pollcode.com/Vp1c"><table border=0 width=150 bgcolor="#ffffff" cellspacin… ✉  
      Line 225, Column 80: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …lcode.com/Vp1c"><table border=0 width=150 bgcolor="#ffffff" cellspacing=0 cell… ✉  
      Line 225, Column 114: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …dth=150 bgcolor="#ffffff" cellspacing=0 cellpadding=2><tr><td colspan=2><font … ✉  
      Line 225, Column 128: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …r="#ffffff" cellspacing=0 cellpadding=2><tr><td colspan=2><font face="Verdana"… ✉  
      Line 225, Column 146: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …acing=0 cellpadding=2><tr><td colspan=2><font face="Verdana" size=-1 color="te… ✉  
      Line 225, Column 174: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …d colspan=2><font face="Verdana" size=-1 color="teal"><center><b>Most useful v… ✉  
      Line 225, Column 197: document type does not allow element "center" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag …"Verdana" size=-1 color="teal"><center><b>Most useful video lesson topics:</b>… ✉  
    The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
    One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").
      Line 225, Column 277: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …center></font></td></tr><tr><td width=5><input type=radio name=answer value="1… ✉  
      Line 225, Column 291: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …</td></tr><tr><td width=5><input type=radio name=answer value="1"></td><td><fo… ✉  
      Line 225, Column 302: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified …tr><td width=5><input type=radio name=answer value="1"></td><td><font face="Ve… ✉  
      Line 225, Column 323: end tag for "input" omitted, but OMITTAG NO was specified … type=radio name=answer value="1"></td><td&gt

  • Clob is not working for bulk data files in PL/SQL XML program

    Hi Odie,
    we took your help to fix the our issue before
    "https://forums.oracle.com/forums/thread.jspa?threadID=2238458&tstart=105"
    working fine for : program is working for smaller size data.
    Issue : now we have problem with the largr size data .
    getting the below error:
    Arguments
    P_dir_name='/tmp'
    P_file_name='CCBGO.COLO_CNG.RESPONSES.20120802.00054131826'
    Environment will now switch to UTF-8 code-set.
    Parts of this log file may not display correctly
    as a result. This is an expected behavior.
    XML_REPORTS_XENVIRONMENT is :
    /apps/applmgr/product/OFDEV/ofdevora/806/guicommon6/tk60/admin/Tk2Motif_UTF8.rgb
    XENVIRONMENT is set to /apps/applmgr/product/OFDEV/ofdevora/806/guicommon6/tk60/admin/Tk2Motif_UTF8.rgb
    Current NLS_LANG and NLS_NUMERIC_CHARACTERS Environment Variables are :
    American_America.UTF8
    stat_low = 8B
    stat_high = 0
    emsg:was terminated by signal 11
    Appreciated for your earlier support.
    Kindly suggest .
    Many Thanks,
    Ramesh.

    Thanks ALex,
    your are true it is concurrent program error ,
    but it is working for small amount of data and generating the output and it is not working for larger data.
    i have placed the code which i have used kindly suggest where i am going wrong.
    i am calling the .rdf through the concurrent program, i've used the below query in RDF
    select
    BATCHHEADER
    ,BATCHTRAILER
    ,RqUID
    ,Severity
    ,PmtRefId
    ,StatusDesc
    ,ErrorDesc
    ,AsOfDate
    ,AsOfTime
    ,RqUID1
    ,SPRefId
    from table(CL_CXFRFXFH_PKG.rcacknowledgments(:P_dir_name,:P_file_name));
    kindly find the below code for the package CL_CXFRFXFH_PKG.
    ==========================
    CREATE OR REPLACE package body APPS.CL_CXFRFXFH_PKG is
    function rcacknowledgments (p_directory in varchar2, p_filename in varchar2)
    return TRecordTable pipelined
    is
    nb_rec number := 1;
    tmp_xml clob;
    tmp_file clob;
    rec TRecord;
    begin
    dbms_lob.createtemporary(tmp_file, true);
    tmp_file := dbms_xslprocessor.read2clob(p_directory, p_filename);
    rec.BATCHHEADER := regexp_replace(tmp_file, '.*<BATCHHEADER>(.*)</BATCHHEADER>.*', '\1', 1, 1, 'n');
    rec.BATCHTRAILER := regexp_replace(tmp_file, '.*<BATCHTRAILER>(.*)</BATCHTRAILER>.*', '\1', 1, 1, 'n');
    loop
    tmp_xml := regexp_substr(tmp_file, '<\?xml[^?]+\?>\s*<([^>]+)>.*?</\1>', 1, nb_rec, 'n');
    exit when length(tmp_xml) = 0;
    --dbms_output.put_line(tmp_rec);
    nb_rec := nb_rec + 1;
    select RqUID, Severity, PmtRefId, StatusDesc, ErrorDesc, AsOfDate, AsOfTime, RqUID1, SPRefId
    into rec.RqUID
    , rec.Severity
    , rec.PmtRefId
    , rec.StatusDesc
    , rec.ErrorDesc
    , rec.AsOfDate
    , rec.AsOfTime
    , rec.RqUID1
    , rec.SPRefId
    from xmltable(
    '/CMA/BankSvcRq' passing xmltype(tmp_xml)
    columns RqUID varchar2(3000) path 'RqUID'
    , Severity varchar2(3000) path 'XferAddRs/Status/Severity'
    , PmtRefId varchar2(3000) path 'XferAddRs/Status/PmtRefId'
    , StatusDesc varchar2(3000) path 'XferAddRs/Status/StatusDesc'
    , ErrorDesc varchar2(3000) path 'XferAddRs/Status/ErrorDesc'
    , AsOfDate varchar2(3000) path 'XferAddRs/Status/AsOfDate'
    , AsOfTime varchar2(3000) path 'XferAddRs/Status/AsOfTime'
    , RqUID1 varchar2(3000) path 'XferAddRs/RqUID'
    , SPRefId varchar2(3000) path 'XferAddRs/SPRefId'
    pipe row ( rec );
    end loop;
    dbms_lob.freetemporary(tmp_file);
    return;
    end;
    end;
    ============================================
    Many Thanks,
    Ramesh.

  • Adobe Air 2 not working in Ubuntu 10.04 32Bits

    Hello, i just installed Adobe Air 2 from .deb file and later from .bin file, but is not working in my Ubuntu, i dont know what is really happening cus i dont get any error message. Do someone knows what is going wrong?

    I just tried to execute the Adobe Air Application Installer from the terminal and i got the next error message:
    $ Adobe\ AIR\ Application\ Installer
    ** (Adobe AIR Application Installer:3312): CRITICAL **: menu_proxy_module_load: assertion `dbusproxy != NULL' failed
    Application crashed with an unhandled SIGSEGV
    Crashlog has been dumped in /tmp/airCrashLogs/0612_1339_UXD6qe
    Also, here is the CrashLog
    Build: 12610
    08048000-0804c000 r-xp 00000000 08:05 263973     /opt/Adobe AIR/Versions/1.0/Adobe AIR Application Installer
    0804c000-0804d000 rwxp 00003000 08:05 263973     /opt/Adobe AIR/Versions/1.0/Adobe AIR Application Installer
    090e2000-092f1000 rwxp 00000000 00:00 0          [heap]
    b2455000-b2495000 rwxp 00000000 00:00 0
    b2495000-b2655000 ---p 00000000 00:00 0
    b2655000-b265d000 rwxp 00000000 00:00 0
    b265d000-b266d000 r-xp 00000000 00:00 0
    b266d000-b2700000 rwxp 00000000 00:00 0
    b2700000-b2710000 r-xp 00000000 00:00 0
    b2710000-b2715000 rwxp 00000000 00:00 0
    b2715000-b2725000 r-xp 00000000 00:00 0
    b2725000-b275b000 rwxp 00000000 00:00 0
    b275b000-b276b000 r-xp 00000000 00:00 0
    b276b000-b27a1000 rwxp 00000000 00:00 0
    b27a1000-b27b1000 r-xp 00000000 00:00 0
    b27b1000-b27c3000 rwxp 00000000 00:00 0
    b27c3000-b27d3000 r-xp 00000000 00:00 0
    b27d3000-b2842000 rwxp 00000000 00:00 0
    b2842000-b2852000 r-xp 00000000 00:00 0
    b2852000-b2855000 rwxp 00000000 00:00 0
    b2855000-b2995000 rwxp 00000000 00:00 0
    b2995000-b299e000 rwxp 00000000 00:00 0
    b299e000-b29ae000 r-xp 00000000 00:00 0
    b29ae000-b2a55000 rwxp 00000000 00:00 0
    b2a55000-b2b0d000 rwxs 00000000 00:04 4194319    /SYSV00000000 (deleted)
    b2b0d000-b2bd0000 r-xp 00000000 08:05 525336     /usr/lib/libasound.so.2.0.0
    b2bd0000-b2bd4000 r-xp 000c2000 08:05 525336     /usr/lib/libasound.so.2.0.0
    b2bd4000-b2bd5000 rwxp 000c6000 08:05 525336     /usr/lib/libasound.so.2.0.0
    b2bd5000-b2e00000 rwxp 00000000 00:00 0
    b2e00000-b2e51000 rwxp 00000000 00:00 0
    b2e51000-b2f00000 ---p 00000000 00:00 0
    b2f6c000-b2f8d000 rwxp 00000000 00:00 0
    b2f8d000-b2fb7000 r-xp 00000000 08:05 686790     /usr/share/locale-langpack/es/LC_MESSAGES/gtk20-properties.mo
    b2fb7000-b2fb8000 ---p 00000000 00:00 0
    b2fb8000-b37b8000 rwxp 00000000 00:00 0
    b37b8000-b3818000 rwxs 00000000 00:04 4161549    /SYSV00000000 (deleted)
    b3818000-b3828000 r-xp 00000000 00:00 0
    b3828000-b383f000 rwxp 00000000 00:00 0
    b383f000-b384f000 r-xp 00000000 00:00 0
    b384f000-b392d000 rwxp 00000000 00:00 0
    b392d000-b393d000 r-xp 00000000 00:00 0
    b393d000-b3a18000 rwxp 00000000 00:00 0
    b3a18000-b3a19000 ---p 00000000 00:00 0
    b3a19000-b4219000 rwxp 00000000 00:00 0
    b4219000-b426c000 r-xp 00000000 08:05 531308     /usr/lib/nss/libnssckbi.so
    b426c000-b4275000 r-xp 00053000 08:05 531308     /usr/lib/nss/libnssckbi.so
    b4275000-b427a000 rwxp 0005c000 08:05 531308     /usr/lib/nss/libnssckbi.so
    b427a000-b42c0000 r-xp 00000000 08:05 531307     /usr/lib/nss/libfreebl3.so
    b42c0000-b42c1000 r-xp 00046000 08:05 531307     /usr/lib/nss/libfreebl3.so
    b42c1000-b42c2000 rwxp 00047000 08:05 531307     /usr/lib/nss/libfreebl3.so
    b42c2000-b42c6000 rwxp 00000000 00:00 0
    b42c6000-b42e8000 r-xp 00000000 08:05 531310     /usr/lib/nss/libnssdbm3.so
    b42e8000-b42e9000 r-xp 00021000 08:05 531310     /usr/lib/nss/libnssdbm3.so
    b42e9000-b42ea000 rwxp 00022000 08:05 531310     /usr/lib/nss/libnssdbm3.so
    b42ea000-b436a000 r-xp 00000000 08:05 526154     /usr/lib/libsqlite3.so.0.8.6
    b436a000-b436b000 r-xp 0007f000 08:05 526154     /usr/lib/libsqlite3.so.0.8.6
    b436b000-b436c000 rwxp 00080000 08:05 526154     /usr/lib/libsqlite3.so.0.8.6
    b436c000-b436d000 rwxp 00000000 00:00 0
    b4382000-b43b7000 r-xp 00000000 08:05 531312     /usr/lib/nss/libsoftokn3.so
    b43b7000-b43b8000 r-xp 00035000 08:05 531312     /usr/lib/nss/libsoftokn3.so
    b43b8000-b43b9000 rwxp 00036000 08:05 531312     /usr/lib/nss/libsoftokn3.so
    b43b9000-b43ba000 ---p 00000000 00:00 0
    b43ba000-b4bba000 rwxp 00000000 00:00 0
    b4bba000-b4bbb000 ---p 00000000 00:00 0
    b4bbb000-b5520000 rwxp 00000000 00:00 0
    b5520000-b5530000 r-xp 00000000 00:00 0
    b5530000-b55bb000 rwxp 00000000 00:00 0
    b55bb000-b55ce000 r-xp 00000000 08:05 529006     /usr/lib/gtk-2.0/modules/libglobalmenu-plugin.so
    b55ce000-b55cf000 ---p 00013000 08:05 529006     /usr/lib/gtk-2.0/modules/libglobalmenu-plugin.so
    b55cf000-b55d0000 r-xp 00013000 08:05 529006     /usr/lib/gtk-2.0/modules/libglobalmenu-plugin.so
    b55d0000-b55d1000 rwxp 00014000 08:05 529006     /usr/lib/gtk-2.0/modules/libglobalmenu-plugin.so
    b55d1000-b55f7000 r-xp 00000000 08:05 529607     /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
    b55f7000-b55f8000 r-xp 00025000 08:05 529607     /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
    b55f8000-b55f9000 rwxp 00026000 08:05 529607     /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
    b55f9000-b5623000 r-xp 00000000 08:05 529600     /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
    b5623000-b5624000 r-xp 00029000 08:05 529600     /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
    b5624000-b5625000 rwxp 0002a000 08:05 529600     /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
    b5625000-b562c000 r-xp 00000000 08:05 525897     /usr/lib/libltdl.so.7.2.1
    b562c000-b562d000 r-xp 00006000 08:05 525897     /usr/lib/libltdl.so.7.2.1
    b562d000-b562e000 rwxp 00007000 08:05 525897     /usr/lib/libltdl.so.7.2.1
    b562e000-b563b000 r-xp 00000000 08:05 526171     /usr/lib/libtdb.so.1.2.0
    b563b000-b563c000 r-xp 0000c000 08:05 526171     /usr/lib/libtdb.so.1.2.0
    b563c000-b563d000 rwxp 0000d000 08:05 526171     /usr/lib/libtdb.so.1.2.0
    b563d000-b5642000 r-xp 00000000 08:05 525980     /usr/lib/libogg.so.0.6.0
    b5642000-b5643000 r-xp 00004000 08:05 525980     /usr/lib/libogg.so.0.6.0
    b5643000-b5644000 rwxp 00005000 08:05 525980     /usr/lib/libogg.so.0.6.0
    b5644000-b566b000 r-xp 00000000 08:05 526222     /usr/lib/libvorbis.so.0.4.3
    b566b000-b566c000 r-xp 00026000 08:05 526222     /usr/lib/libvorbis.so.0.4.3
    b566c000-b566d000 rwxp 00027000 08:05 526222     /usr/lib/libvorbis.so.0.4.3
    b566d000-b567b000 r-xp 00000000 08:05 525399     /usr/lib/libcanberra.so.0.2.1
    b567b000-b567c000 r-xp 0000d000 08:05 525399     /usr/lib/libcanberra.so.0.2.1
    b567c000-b567d000 rwxp 0000e000 08:05 525399     /usr/lib/libcanberra.so.0.2.1
    b5681000-b5682000 rwxp 00000000 00:00 0
    b5682000-b5686000 r-xp 00000000 08:05 532424     /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
    b5686000-b5687000 r-xp 00003000 08:05 532424     /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
    b5687000-b5688000 rwxp 00004000 08:05 532424     /usr/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so
    b5688000-b5690000 r-xp 00000000 08:05 532407     /usr/lib/gtk-2.0/2.10.0/engines/libpixmap.so
    b5690000-b5691000 r-xp 00007000 08:05 532407     /usr/lib/gtk-2.0/2.10.0/engines/libpixmap.so
    b5691000-b5692000 rwxp 00008000 08:05 532407     /usr/lib/gtk-2.0/2.10.0/engines/libpixmap.so
    b5692000-b56bc000 r-xp 00000000 08:05 667713     /usr/share/locale/es/LC_MESSAGES/gtk20-properties.mo
    b56bc000-b56c6000 r-xp 00000000 08:05 130675     /lib/tls/i686/cmov/libnss_files-2.11.1.so
    b56c6000-b56c7000 r-xp 00009000 08:05 130675     /lib/tls/i686/cmov/libnss_files-2.11.1.so
    b56c7000-b56c8000 rwxp 0000a000 08:05 130675     /lib/tls/i686/cmov/libnss_files-2.11.1.so
    b56c8000-b56d0000 r-xp 00000000 08:05 130685     /lib/tls/i686/cmov/libnss_nis-2.11.1.so
    b56d0000-b56d1000 r-xp 00007000 08:05 130685     /lib/tls/i686/cmov/libnss_nis-2.11.1.so
    b56d1000-b56d2000 rwxp 00008000 08:05 130685     /lib/tls/i686/cmov/libnss_nis-2.11.1.so
    b56d2000-b56e5000 r-xp 00000000 08:05 130669     /lib/tls/i686/cmov/libnsl-2.11.1.so
    b56e5000-b56e6000 r-xp 00012000 08:05 130669     /lib/tls/i686/cmov/libnsl-2.11.1.so
    b56e6000-b56e7000 rwxp 00013000 08:05 130669     /lib/tls/i686/cmov/libnsl-2.11.1.so
    b56e7000-b56e9000 rwxp 00000000 00:00 0
    b56e9000-b56ef000 r-xp 00000000 08:05 130671     /lib/tls/i686/cmov/libnss_compat-2.11.1.so
    b56ef000-b56f0000 r-xp 00006000 08:05 130671     /lib/tls/i686/cmov/libnss_compat-2.11.1.so
    b56f0000-b56f1000 rwxp 00007000 08:05 130671     /lib/tls/i686/cmov/libnss_compat-2.11.1.so
    b56f1000-b56f8000 r-xp 00000000 08:05 526226     /usr/lib/libvorbisfile.so.3.3.2
    b56f8000-b56f9000 r-xp 00006000 08:05 526226     /usr/lib/libvorbisfile.so.3.3.2
    b56f9000-b56fa000 rwxp 00007000 08:05 526226     /usr/lib/libvorbisfile.so.3.3.2
    b56fa000-b56fd000 r-xp 00000000 08:05 525397     /usr/lib/libcanberra-gtk.so.0.1.5
    b56fd000-b56fe000 r-xp 00003000 08:05 525397     /usr/lib/libcanberra-gtk.so.0.1.5
    b56fe000-b56ff000 rwxp 00004000 08:05 525397     /usr/lib/libcanberra-gtk.so.0.1.5
    b56ff000-b5703000 r-xp 00000000 08:05 529653     /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
    b5703000-b5704000 ---p 00004000 08:05 529653     /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
    b5704000-b5705000 r-xp 00004000 08:05 529653     /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
    b5705000-b5706000 rwxp 00005000 08:05 529653     /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
    b5706000-b571a000 r-xp 00000000 08:05 667712     /usr/share/locale/es/LC_MESSAGES/gtk20.mo
    b571a000-b5726000 r-xp 00000000 08:05 686929     /usr/share/locale-langpack/es/LC_MESSAGES/glib20.mo
    b5726000-b5748000 r-xp 00000000 08:05 710993     /usr/share/locale-langpack/es/LC_MESSAGES/libc.mo
    b5748000-b5787000 r-xp 00000000 08:05 530336     /usr/lib/locale/es_CO.utf8/LC_CTYPE
    b5787000-b58a5000 r-xp 00000000 08:05 530530     /usr/lib/locale/es_CO.utf8/LC_COLLATE
    b58a5000-b58a9000 r-xp 00000000 08:05 525267     /usr/lib/libXdmcp.so.6.0.0
    b58a9000-b58aa000 r-xp 00003000 08:05 525267     /usr/lib/libXdmcp.so.6.0.0
    b58aa000-b58ab000 rwxp 00004000 08:05 525267     /usr/lib/libXdmcp.so.6.0.0
    b58ab000-b58ad000 r-xp 00000000 08:05 525256     /usr/lib/libXau.so.6.0.0
    b58ad000-b58ae000 r-xp 00001000 08:05 525256     /usr/lib/libXau.so.6.0.0
    b58ae000-b58af000 rwxp 00002000 08:05 525256     /usr/lib/libXau.so.6.0.0
    b58af000-b58c8000 r-xp 00000000 08:05 130725     /lib/libselinux.so.1
    b58c8000-b58c9000 r-xp 00018000 08:05 130725     /lib/libselinux.so.1
    b58c9000-b58ca000 rwxp 00019000 08:05 130725     /lib/libselinux.so.1
    b58ca000-b58da000 r-xp 00000000 08:05 130721     /lib/tls/i686/cmov/libresolv-2.11.1.so
    b58da000-b58db000 r-xp 00010000 08:05 130721     /lib/tls/i686/cmov/libresolv-2.11.1.so
    b58db000-b58dc000 rwxp 00011000 08:05 130721     /lib/tls/i686/cmov/libresolv-2.11.1.so
    b58dc000-b58de000 rwxp 00000000 00:00 0
    b58de000-b58e4000 r-xp 00000000 08:05 526261     /usr/lib/libxcb-render.so.0.0.0
    b58e4000-b58e5000 r-xp 00005000 08:05 526261     /usr/lib/libxcb-render.so.0.0.0
    b58e5000-b58e6000 rwxp 00006000 08:05 526261     /usr/lib/libxcb-render.so.0.0.0
    b58e6000-b58e9000 r-xp 00000000 08:05 526259     /usr/lib/libxcb-render-util.so.0.0.0
    b58e9000-b58ea000 r-xp 00002000 08:05 526259     /usr/lib/libxcb-render-util.so.0.0.0
    b58ea000-b58eb000 rwxp 00003000 08:05 526259     /usr/lib/libxcb-render-util.so.0.0.0
    b58eb000-b590e000 r-xp 00000000 08:05 130713     /lib/libpng12.so.0.42.0
    b590e000-b590f000 r-xp 00022000 08:05 130713     /lib/libpng12.so.0.42.0
    b590f000-b5910000 rwxp 00023000 08:05 130713     /lib/libpng12.so.0.42.0
    b5910000-b5924000 r-xp 00000000 08:05 525483     /usr/lib/libdirect-1.2.so.0.8.0
    b5924000-b5925000 r-xp 00013000 08:05 525483     /usr/lib/libdirect-1.2.so.0.8.0
    b5925000-b5926000 rwxp 00014000 08:05 525483     /usr/lib/libdirect-1.2.so.0.8.0
    b5926000-b592e000 r-xp 00000000 08:05 525560     /usr/lib/libfusion-1.2.so.0.8.0
    b592e000-b592f000 r-xp 00007000 08:05 525560     /usr/lib/libfusion-1.2.so.0.8.0
    b592f000-b5930000 rwxp 00008000 08:05 525560     /usr/lib/libfusion-1.2.so.0.8.0
    b5930000-b59a3000 r-xp 00000000 08:05 525485     /usr/lib/libdirectfb-1.2.so.0.8.0
    b59a3000-b59a4000 ---p 00073000 08:05 525485     /usr/lib/libdirectfb-1.2.so.0.8.0
    b59a4000-b59a5000 r-xp 00073000 08:05 525485     /usr/lib/libdirectfb-1.2.so.0.8.0
    b59a5000-b59a6000 rwxp 00074000 08:05 525485     /usr/lib/libdirectfb-1.2.so.0.8.0
    b59a6000-b59a7000 rwxp 00000000 00:00 0
    b59a7000-b59fe000 r-xp 00000000 08:05 526027     /usr/lib/libpixman-1.so.0.16.4
    b59fe000-b5a00000 r-xp 00057000 08:05 526027     /usr/lib/libpixman-1.so.0.16.4
    b5a00000-b5a01000 rwxp 00059000 08:05 526027     /usr/lib/libpixman-1.so.0.16.4
    b5a01000-b5a03000 r-xp 00000000 08:05 526030     /usr/lib/libplds4.so
    b5a03000-b5a04000 r-xp 00001000 08:05 526030     /usr/lib/libplds4.so
    b5a04000-b5a05000 rwxp 00002000 08:05 526030     /usr/lib/libplds4.so
    b5a05000-b5a08000 r-xp 00000000 08:05 526028     /usr/lib/libplc4.so
    b5a08000-b5a09000 r-xp 00002000 08:05 526028     /usr/lib/libplc4.so
    b5a09000-b5a0a000 rwxp 00003000 08:05 526028     /usr/lib/libplc4.so
    b5a0a000-b5a1f000 r-xp 00000000 08:05 525975     /usr/lib/libnssutil3.so
    b5a1f000-b5a22000 r-xp 00014000 08:05 525975     /usr/lib/libnssutil3.so
    b5a22000-b5a23000 rwxp 00017000 08:05 525975     /usr/lib/libnssutil3.so
    b5a23000-b5a47000 r-xp 00000000 08:05 130636     /lib/libexpat.so.1.5.2
    b5a47000-b5a49000 r-xp 00024000 08:05 130636     /lib/libexpat.so.1.5.2
    b5a49000-b5a4a000 rwxp 00026000 08:05 130636     /lib/libexpat.so.1.5.2
    b5a4a000-b5a62000 r-xp 00000000 08:05 526263     /usr/lib/libxcb.so.1.1.0
    b5a62000-b5a63000 r-xp 00017000 08:05 526263     /usr/lib/libxcb.so.1.1.0
    b5a63000-b5a64000 rwxp 00018000 08:05 526263     /usr/lib/libxcb.so.1.1.0
    b5a64000-b5a93000 r-xp 00000000 08:05 130701     /lib/libpcre.so.3.12.1
    b5a93000-b5a94000 r-xp 0002e000 08:05 130701     /lib/libpcre.so.3.12.1
    b5a94000-b5a95000 rwxp 0002f000 08:05 130701     /lib/libpcre.so.3.12.1
    b5a95000-b5a9c000 r-xp 00000000 08:05 130723     /lib/tls/i686/cmov/librt-2.11.1.so
    b5a9c000-b5a9d000 r-xp 00006000 08:05 130723     /lib/tls/i686/cmov/librt-2.11.1.so
    b5a9d000-b5a9e000 rwxp 00007000 08:05 130723     /lib/tls/i686/cmov/librt-2.11.1.so
    b5a9e000-b5aa1000 r-xp 00000000 08:05 522444     /usr/lib/libgmodule-2.0.so.0.2400.1
    b5aa1000-b5aa2000 r-xp 00002000 08:05 522444     /usr/lib/libgmodule-2.0.so.0.2400.1
    b5aa2000-b5aa3000 rwxp 00003000 08:05 522444     /usr/lib/libgmodule-2.0.so.0.2400.1
    b5aa3000-b5ac8000 r-xp 00000000 08:05 526001     /usr/lib/libpangoft2-1.0.so.0.2800.0
    b5ac8000-b5ac9000 r-xp 00024000 08:05 526001     /usr/lib/libpangoft2-1.0.so.0.2800.0
    b5ac9000-b5aca000 rwxp 00025000 08:05 526001     /usr/lib/libpangoft2-1.0.so.0.2800.0
    b5aca000-b5b64000 r-xp 00000000 08:05 524098     /usr/lib/libgio-2.0.so.0.2400.1
    b5b64000-b5b65000 ---p 0009a000 08:05 524098     /usr/lib/libgio-2.0.so.0.2400.1
    b5b65000-b5b66000 r-xp 0009a000 08:05 524098     /usr/lib/libgio-2.0.so.0.2400.1
    b5b66000-b5b67000 rwxp 0009b000 08:05 524098     /usr/lib/libgio-2.0.so.0.2400.1
    b5b67000-b5b68000 rwxp 00000000 00:00 0
    b5b68000-b5bdf000 r-xp 00000000 08:05 525389     /usr/lib/libcairo.so.2.10800.10
    b5bdf000-b5be1000 r-xp 00076000 08:05 525389     /usr/lib/libcairo.so.2.10800.10
    b5be1000-b5be2000 rwxp 00078000 08:05 525389     /usr/lib/libcairo.so.2.10800.10
    b5be2000-b5bfb000 r-xp 00000000 08:05 525342     /usr/lib/libatk-1.0.so.0.3009.1
    b5bfb000-b5bfc000 ---p 00019000 08:05 525342     /usr/lib/libatk-1.0.so.0.3009.1
    b5bfc000-b5bfd000 r-xp 00019000 08:05 525342     /usr/lib/libatk-1.0.so.0.3009.1
    b5bfd000-b5bfe000 rwxp 0001a000 08:05 525342     /usr/lib/libatk-1.0.so.0.3009.1
    b5bfe000-b5c02000 r-xp 00000000 08:05 525271     /usr/lib/libXfixes.so.3.1.0
    b5c02000-b5c03000 r-xp 00003000 08:05 525271     /usr/lib/libXfixes.so.3.1.0
    b5c03000-b5c04000 rwxp 00004000 08:05 525271     /usr/lib/libXfixes.so.3.1.0
    b5c04000-b5c06000 r-xp 00000000 08:05 525265     /usr/lib/libXdamage.so.1.1.0
    b5c06000-b5c07000 r-xp 00001000 08:05 525265     /usr/lib/libXdamage.so.1.1.0
    b5c07000-b5c08000 rwxp 00002000 08:05 525265     /usr/lib/libXdamage.so.1.1.0
    b5c08000-b5c0a000 r-xp 00000000 08:05 525261     /usr/lib/libXcomposite.so.1.0.0
    b5c0a000-b5c0b000 r-xp 00001000 08:05 525261     /usr/lib/libXcomposite.so.1.0.0
    b5c0b000-b5c0c000 rwxp 00002000 08:05 525261     /usr/lib/libXcomposite.so.1.0.0
    b5c0c000-b5c16000 r-xp 00000000 08:05 525999     /usr/lib/libpangocairo-1.0.so.0.2800.0
    b5c16000-b5c17000 r-xp 00009000 08:05 525999     /usr/lib/libpangocairo-1.0.so.0.2800.0
    b5c17000-b5c18000 rwxp 0000a000 08:05 525999     /usr/lib/libpangocairo-1.0.so.0.2800.0
    b5c18000-b5c20000 r-xp 00000000 08:05 525263     /usr/lib/libXcursor.so.1.0.2
    b5c20000-b5c21000 r-xp 00007000 08:05 525263     /usr/lib/libXcursor.so.1.0.2
    b5c21000-b5c22000 rwxp 00008000 08:05 525263     /usr/lib/libXcursor.so.1.0.2
    b5c22000-b5c28000 r-xp 00000000 08:05 525289     /usr/lib/libXrandr.so.2.2.0
    b5c28000-b5c29000 r-xp 00005000 08:05 525289     /usr/lib/libXrandr.so.2.2.0
    b5c29000-b5c2a000 rwxp 00006000 08:05 525289     /usr/lib/libXrandr.so.2.2.0
    b5c2a000-b5c36000 r-xp 00000000 08:05 525277     /usr/lib/libXi.so.6.1.0
    b5c36000-b5c37000 r-xp 0000c000 08:05 525277     /usr/lib/libXi.so.6.1.0
    b5c37000-b5c38000 rwxp 0000d000 08:05 525277     /usr/lib/libXi.so.6.1.0
    b5c38000-b5c3a000 r-xp 00000000 08:05 525279     /usr/lib/libXinerama.so.1.0.0
    b5c3a000-b5c3b000 r-xp 00001000 08:05 525279     /usr/lib/libXinerama.so.1.0.0
    b5c3b000-b5c3c000 rwxp 00002000 08:05 525279     /usr/lib/libXinerama.so.1.0.0
    b5c3c000-b5c4a000 r-xp 00000000 08:05 525269     /usr/lib/libXext.so.6.4.0
    b5c4a000-b5c4b000 r-xp 0000d000 08:05 525269     /usr/lib/libXext.so.6.4.0
    b5c4b000-b5c4c000 rwxp 0000e000 08:05 525269     /usr/lib/libXext.so.6.4.0
    b5c4c000-b5c50000 r-xp 00000000 08:05 264112     /opt/Adobe AIR/Versions/1.0/Resources/libpacparser.so
    b5c50000-b5c51000 rwxp 00003000 08:05 264112     /opt/Adobe AIR/Versions/1.0/Resources/libpacparser.so
    b5c51000-b5c82000 r-xp 00000000 08:05 525965     /usr/lib/libnspr4.so
    b5c82000-b5c83000 r-xp 00030000 08:05 525965     /usr/lib/libnspr4.so
    b5c83000-b5c84000 rwxp 00031000 08:05 525965     /usr/lib/libnspr4.so
    b5c84000-b5c86000 rwxp 00000000 00:00 0
    b5c86000-b5ca8000 r-xp 00000000 08:05 526131     /usr/lib/libsmime3.so
    b5ca8000-b5caa000 r-xp 00021000 08:05 526131     /usr/lib/libsmime3.so
    b5caa000-b5cab000 rwxp 00023000 08:05 526131     /usr/lib/libsmime3.so
    b5cab000-b5cda000 r-xp 00000000 08:05 526156     /usr/lib/libssl3.so
    b5cda000-b5cdc000 r-xp 0002e000 08:05 526156     /usr/lib/libssl3.so
    b5cdc000-b5cdd000 rwxp 00030000 08:05 526156     /usr/lib/libssl3.so
    b5cdd000-b5deb000 r-xp 00000000 08:05 525967     /usr/lib/libnss3.so
    b5deb000-b5dee000 r-xp 0010d000 08:05 525967     /usr/lib/libnss3.so
    b5dee000-b5df0000 rwxp 00110000 08:05 525967     /usr/lib/libnss3.so
    b5df0000-b5f14000 r-xp 00000000 08:05 526269     /usr/lib/libxml2.so.2.7.6
    b5f14000-b5f18000 r-xp 00123000 08:05 526269     /usr/lib/libxml2.so.2.7.6
    b5f18000-b5f19000 rwxp 00127000 08:05 526269     /usr/lib/libxml2.so.2.7.6
    b5f19000-b5f1a000 rwxp 00000000 00:00 0
    b5f1a000-b5f2d000 r-xp 00000000 08:05 130758     /lib/libz.so.1.2.3.3
    b5f2d000-b5f2e000 r-xp 00012000 08:05 130758     /lib/libz.so.1.2.3.3
    b5f2e000-b5f2f000 rwxp 00013000 08:05 130758     /lib/libz.so.1.2.3.3
    b5f2f000-b6076000 r-xp 00000000 08:05 264009     /opt/Adobe AIR/Versions/1.0/Resources/libcurl.so
    b6076000-b608e000 rwxp 00146000 08:05 264009     /opt/Adobe AIR/Versions/1.0/Resources/libcurl.so
    b608e000-b6092000 rwxp 00000000 00:00 0
    b6092000-b6095000 r-xp 00000000 08:05 263999     /opt/Adobe AIR/Versions/1.0/Resources/libeggtray.so
    b6095000-b6096000 rwxp 00002000 08:05 263999     /opt/Adobe AIR/Versions/1.0/Resources/libeggtray.so
    b6096000-b609e000 r-xp 00000000 08:05 525291     /usr/lib/libXrender.so.1.3.0
    b609e000-b609f000 r-xp 00007000 08:05 525291     /usr/lib/libXrender.so.1.3.0
    b609f000-b60a0000 rwxp 00008000 08:05 525291     /usr/lib/libXrender.so.1.3.0
    b60a0000-b60e0000 r-xp 00000000 08:05 525997     /usr/lib/libpango-1.0.so.0.2800.0
    b60e0000-b60e1000 ---p 00040000 08:05 525997     /usr/lib/libpango-1.0.so.0.2800.0
    b60e1000-b60e2000 r-xp 00040000 08:05 525997     /usr/lib/libpango-1.0.so.0.2800.0
    b60e2000-b60e3000 rwxp 00041000 08:05 525997     /usr/lib/libpango-1.0.so.0.2800.0
    b60e3000-b6154000 r-xp 00000000 08:05 525556     /usr/lib/libfreetype.so.6.3.22
    b6154000-b6158000 r-xp 00070000 08:05 525556     /usr/lib/libfreetype.so.6.3.22
    b6158000-b6159000 rwxp 00074000 08:05 525556     /usr/lib/libfreetype.so.6.3.22
    b6159000-b6187000 r-xp 00000000 08:05 525548     /usr/lib/libfontconfig.so.1.4.4
    b6187000-b6188000 r-xp 0002d000 08:05 525548     /usr/lib/libfontconfig.so.1.4.4
    b6188000-b6189000 rwxp 0002e000 08:05 525548     /usr/lib/libfontconfig.so.1.4.4
    b6189000-b62a2000 r-xp 00000000 08:05 525252     /usr/lib/libX11.so.6.3.0
    b62a2000-b62a3000 r-xp 00118000 08:05 525252     /usr/lib/libX11.so.6.3.0
    b62a3000-b62a5000 rwxp 00119000 08:05 525252     /usr/lib/libX11.so.6.3.0
    b62a5000-b62a6000 rwxp 00000000 00:00 0
    b62a6000-b62aa000 r-xp 00000000 08:05 522448     /usr/lib/libgthread-2.0.so.0.2400.1
    b62aa000-b62ab000 r-xp 00003000 08:05 522448     /usr/lib/libgthread-2.0.so.0.2400.1
    b62ab000-b62ac000 rwxp 00004000 08:05 522448     /usr/lib/libgthread-2.0.so.0.2400.1
    b62ac000-b6374000 r-xp 00000000 08:05 130694     /lib/libglib-2.0.so.0.2400.1
    b6374000-b6375000 r-xp 000c7000 08:05 130694     /lib/libglib-2.0.so.0.2400.1
    b6375000-b6376000 rwxp 000c8000 08:05 130694     /lib/libglib-2.0.so.0.2400.1
    b6376000-b63b3000 r-xp 00000000 08:05 522443     /usr/lib/libgobject-2.0.so.0.2400.1
    b63b3000-b63b4000 r-xp 0003c000 08:05 522443     /usr/lib/libgobject-2.0.so.0.2400.1
    b63b4000-b63b5000 rwxp 0003d000 08:05 522443     /usr/lib/libgobject-2.0.so.0.2400.1
    b63b5000-b63cd000 r-xp 00000000 08:05 532461     /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
    b63cd000-b63ce000 r-xp 00017000 08:05 532461     /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
    b63ce000-b63cf000 rwxp 00018000 08:05 532461     /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
    b63cf000-b6462000 r-xp 00000000 08:05 532459     /usr/lib/libgdk-x11-2.0.so.0.2000.1
    b6462000-b6464000 r-xp 00093000 08:05 532459     /usr/lib/libgdk-x11-2.0.so.0.2000.1
    b6464000-b6465000 rwxp 00095000 08:05 532459     /usr/lib/libgdk-x11-2.0.so.0.2000.1
    b6465000-b6833000 r-xp 00000000 08:05 532460     /usr/lib/libgtk-x11-2.0.so.0.2000.1
    b6833000-b6837000 r-xp 003ce000 08:05 532460     /usr/lib/libgtk-x11-2.0.so.0.2000.1
    b6837000-b6839000 rwxp 003d2000 08:05 532460     /usr/lib/libgtk-x11-2.0.so.0.2000.1
    b6839000-b683b000 rwxp 00000000 00:00 0
    b683b000-b749e000 r-xp 00000000 08:05 263976     /opt/Adobe AIR/Versions/1.0/libCore.so
    b749e000-b74fc000 rwxp 00c62000 08:05 263976     /opt/Adobe AIR/Versions/1.0/libCore.so
    b74fc000-b7516000 rwxp 00000000 00:00 0
    b7516000-b7533000 r-xp 00000000 08:05 130643     /lib/libgcc_s.so.1
    b7533000-b7534000 r-xp 0001c000 08:05 130643     /lib/libgcc_s.so.1
    b7534000-b7535000 rwxp 0001d000 08:05 130643     /lib/libgcc_s.so.1
    b7535000-b7559000 r-xp 00000000 08:05 130658     /lib/tls/i686/cmov/libm-2.11.1.so
    b7559000-b755a000 r-xp 00023000 08:05 130658     /lib/tls/i686/cmov/libm-2.11.1.so
    b755a000-b755b000 rwxp 00024000 08:05 130658     /lib/tls/i686/cmov/libm-2.11.1.so
    b755b000-b76ae000 r-xp 00000000 08:05 130609     /lib/tls/i686/cmov/libc-2.11.1.so
    b76ae000-b76af000 ---p 00153000 08:05 130609     /lib/tls/i686/cmov/libc-2.11.1.so
    b76af000-b76b1000 r-xp 00153000 08:05 130609     /lib/tls/i686/cmov/libc-2.11.1.so
    b76b1000-b76b2000 rwxp 00155000 08:05 130609     /lib/tls/i686/cmov/libc-2.11.1.so
    b76b2000-b76b5000 rwxp 00000000 00:00 0
    b76b5000-b76ca000 r-xp 00000000 08:05 130717     /lib/tls/i686/cmov/libpthread-2.11.1.so
    b76ca000-b76cb000 r-xp 00014000 08:05 130717     /lib/tls/i686/cmov/libpthread-2.11.1.so
    b76cb000-b76cc000 rwxp 00015000 08:05 130717     /lib/tls/i686/cmov/libpthread-2.11.1.so
    b76cc000-b76cf000 rwxp 00000000 00:00 0
    b76cf000-b77b8000 r-xp 00000000 08:05 526161     /usr/lib/libstdc++.so.6.0.13
    b77b8000-b77b9000 ---p 000e9000 08:05 526161     /usr/lib/libstdc++.so.6.0.13
    b77b9000-b77bd000 r-xp 000e9000 08:05 526161     /usr/lib/libstdc++.so.6.0.13
    b77bd000-b77be000 rwxp 000ed000 08:05 526161     /usr/lib/libstdc++.so.6.0.13
    b77be000-b77c5000 rwxp 00000000 00:00 0
    b77c5000-b77c7000 r-xp 00000000 08:05 130623     /lib/tls/i686/cmov/libdl-2.11.1.so
    b77c7000-b77c8000 r-xp 00001000 08:05 130623     /lib/tls/i686/cmov/libdl-2.11.1.so
    b77c8000-b77c9000 rwxp 00002000 08:05 130623     /lib/tls/i686/cmov/libdl-2.11.1.so
    b77c9000-b77cd000 rwxp 00000000 00:00 0
    b77cd000-b77ce000 r-xp 00000000 08:05 530744     /usr/lib/locale/es_CO.utf8/LC_NUMERIC
    b77ce000-b77cf000 r-xp 00000000 08:05 530552     /usr/lib/locale/es_CO.utf8/LC_TIME
    b77cf000-b77d0000 r-xp 00000000 08:05 530291     /usr/lib/locale/es_CO.utf8/LC_MONETARY
    b77d0000-b77d1000 r-xp 00000000 08:05 530540     /usr/lib/locale/es_CO.utf8/LC_MESSAGES/SYS_LC_MESSAGES
    b77d1000-b77d2000 r-xp 00000000 08:05 530342     /usr/lib/locale/es_CO.utf8/LC_PAPER
    b77d2000-b77d3000 r-xp 00000000 08:05 530535     /usr/lib/locale/es_CO.utf8/LC_NAME
    b77d3000-b77d4000 r-xp 00000000 08:05 530292     /usr/lib/locale/es_CO.utf8/LC_ADDRESS
    b77d4000-b77d5000 r-xp 00000000 08:05 530293     /usr/lib/locale/es_CO.utf8/LC_TELEPHONE
    b77d5000-b77d6000 r-xp 00000000 08:05 530338     /usr/lib/locale/es_CO.utf8/LC_MEASUREMENT
    b77d6000-b77dd000 r-xs 00000000 08:05 530625     /usr/lib/gconv/gconv-modules.cache
    b77dd000-b77de000 r-xp 00000000 08:05 530295     /usr/lib/locale/es_CO.utf8/LC_IDENTIFICATION
    b77de000-b77e0000 rwxp 00000000 00:00 0
    b77e0000-b77e1000 r-xp 00000000 00:00 0          [vdso]
    b77e1000-b77fc000 r-xp 00000000 08:05 134586     /lib/ld-2.11.1.so
    b77fc000-b77fd000 r-xp 0001a000 08:05 134586     /lib/ld-2.11.1.so
    b77fd000-b77fe000 rwxp 0001b000 08:05 134586     /lib/ld-2.11.1.so
    bf8e1000-bf8f5000 rwxp 00000000 00:00 0          [stack]
    bf8f5000-bf8f6000 rw-p 00000000 00:00 0
    ========================================= END =========================================
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x21e977) [0xb6a59977]
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x2131d5) [0xb6a4e1d5]
    [0xb77e0410]
    /lib/libglib-2.0.so.0(g_main_context_prepare+0x16e) [0xb62eaa8e]
    /lib/libglib-2.0.so.0(+0x3eee9) [0xb62eaee9]
    /lib/libglib-2.0.so.0(g_main_context_pending+0x67) [0xb62eb5d7]
    /usr/lib/libgtk-x11-2.0.so.0(gtk_events_pending+0x31) [0xb659c441]
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x2129de) [0xb6a4d9de]
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x2ad5c4) [0xb6ae85c4]
    /lib/libglib-2.0.so.0(+0x3bd5c) [0xb62e7d5c]
    /lib/libglib-2.0.so.0(g_main_context_dispatch+0x1d5) [0xb62e75e5]
    /lib/libglib-2.0.so.0(+0x3f2d8) [0xb62eb2d8]
    /lib/libglib-2.0.so.0(g_main_loop_run+0x187) [0xb62eb817]
    /usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xb9) [0xb659c579]
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x8c9a5) [0xb68c79a5]
    /opt/Adobe AIR/Versions/1.0/libCore.so(+0x8cf3f) [0xb68c7f3f]
    /opt/Adobe AIR/Versions/1.0/libCore.so(AppInstallEntryMain+0x9f) [0xb68c819c]
    Adobe AIR Application Installer(main+0x1a5) [0x8048ba9]
    /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0xb7571bd6]
    Adobe AIR Application Installer() [0x8048971]

  • [solved] keyboard not working correctly on vc/1

    the behaviour is quite odd.
    when i hit ctrl-alt-f1, and switch to the first virtual console, trying to login, or even type doesnt work quite as it should.
    example, i try to login: this is what i get:
    lappy login: elragn
    password:
    when the user name should be eldragon, if i type each letter at a time, until i get it to work, i can type correctly, and its not always the same letters that dont work. of course, the password comes in blank, and sometimes, when i get it all right, i can login, and the effect contiues
    this is not a hardware issue, other virtual consoles work ok, and the keyboard works fine under Xorg.
    so, what could be wrong with this vc? anyone got a clue? ive searched the wiki, bug reports, google, and the forums (not in this order) for an answer but i came up empty.
    PD. if im posting in the wrong forum, please move it where it should go
    Last edited by eldragon (2009-03-22 18:08:54)

    Hi,
    Since the problem is in the vc's, and the keymap is loaded "pre Xorg", I'd start by doing some tests there.
    I'm still a learner myself, so this might not work, or it might, either way, you've got nothing to loose
    First of all check logs for errors, maybe something pops out.
    If no errors on logs, than here's what I would do if I were you:
    (backup /etc/rc.conf , /etc/inittab , /etc/locale.gen to some directory)
    1. Let's start by isolating the problem by not going to gdm->gnome automatically, so you can test vc's themselfs more efficiently and quicker.
    take out gdm from the DAEMONS line in /etc/rc.conf (something like this)
    DAEMONS=(syslog-ng network netfs crond alsa hal fam)
    2. let your /etc/inittab be like you have in this section (id:3)
    ## Only one of the following two lines can be uncommented!
    # Boot to console
    id:3:initdefault:
    # Boot to X11
    #id:5:initdefault:
    and comment everything here:
    # Example lines for starting a login manager
    #x:5:respawn:/usr/bin/xdm -nodaemon
    #x:5:respawn:/usr/sbin/gdm -nodaemon
    #x:5:respawn:/usr/bin/kdm -nodaemon
    #x:5:respawn:/usr/bin/slim >& /dev/null
    3. do you use a non-us keyboard?
    check your rc.conf for the 1st lines, mainly your KEYMAP
    LOCALE="en_US.utf8"
    HARDWARECLOCK="UTC"
    USEDIRECTISA="no"
    TIMEZONE="your.timezone.here"
    KEYMAP="your.keymap.here"
    CONSOLEFONT=
    CONSOLEMAP=
    USECOLOR="yes"
    confirm that your keymap exists in /usr/share/kbd/keymaps and double confirm the name is right, example:
    for US keyboard the file is 'us.map.gz' so KEYMAP="us" (take out .map.gz); in case your keyboard is not US, check the name, as some have more letters than others
    (usually /usr/share/kbd/keymaps/i386/qwerty unless your pc is not i386 or qwerty ofc )
    4. reboot pc.
       You'll be in vc/1.   
       Now, instead of jumping in consoles with ctr-alt-Fx, try jumping just with Alt+Fx. (if it doesn't work, go ctrl+alt+fx ofc)
       Do Alt+F2 and start typing as normal, anything and manything at any speed and confirm is good. Don't press enter. Just testing keystrokes.
       Do Alt+F3, Alt+F4, Alt+F5 and test the same for each vc.
       Now for the final and problematic one, go Alt+F1 and test.
       If it's good, then probably your problem is on X/gdm/gnome or anything that is loading after vc, or if you changed your keymap, then that was the faulty thing.
       If it's not good, keep on reading
    5. don't enter in vc/1, rather jump to vc/2 or 3 or something and enter as root, let's edit your /etc/rc.conf again.
    copy to a piece of paper your 1st options in case they are different from below:
    LOCALE="en_US.utf8"
    HARDWARECLOCK="UTC"
    USEDIRECTISA="no"
    TIMEZONE="your.timezone.here"
    KEYMAP="us"
    CONSOLEFONT=
    CONSOLEMAP=
    USECOLOR="yes"
    basicly is trying to put it to a default state. Put your options just like they are above, except TIMEZONE, you can put yours, I don't remember default one.
    Reboot and test again just like in step 4.
    If it doesn't work, you might give a look at /etc/locale.gen and just uncomment these 2 lines:
    #en_SG.UTF-8 UTF-8
    #en_SG ISO-8859-1
    en_US.UTF-8 UTF-8
    en_US ISO-8859-1
    #en_ZA.UTF-8 UTF-8
    #en_ZA ISO-8859-1
    leave every other line commented. in case you had some of your own uncommented, copy to a paper wich ones were, and comment them.
    write in console
    locale-gen
    let it end generating the locales, reboot, and step 4 again.
    6. Still not working, let's try to put things bad proposedly! Change your KEYMAP to another one, if qwerty, just choose another qwerty language, all letters should be on same place, except for punctuation ofc.
      Reboot and try again as step 4.
      Still not working? Change the LOCALE and keep your wrong qwerty keyboard. (LOCALE will probably change some words, like password to it's LOCALE language, etc).
      Reboot and try again as step 4.
      Still not working? ok, final attempt, change back your LOCALE and your KEYMAP to the values you had before, the correct ones.
      Reboot and try again as step 4.
    7. If still not working, well, for now I don't know much more. Take in consideration that the boot process goes through several steps, the error might be in one of those steps. One last thing you can try, altho I think it works just in DE/WM modes, I've read in some posts (here or not, can't remember) that by pressing Ctrl-Alt-K you can change your keyboard layout, assuming you have a second one, and use them for different things, I think the example I read on the post was something like, you wanna code in english but talk in irc in russian for example.
    I kinda doubt it works, but if it also activates in vc's mode, then you could have pressed it accidently (like when doing ctrl-alt-fx, your finger slipped ).
    press ctrl-alt-k, type a few letters, press ctrl-alt-k again, type more letters, and you'll see if it does something or not.
    Again, just try, you got nothing to loose
    One thing I noticed, is that when trying to put some characters on vc as username, it acts as delete, some even erase the all line in one go and some don't do nothing, some of the characters were # @ £ §.
    8. Since it didn't work, let's put everything as it was.
    8.1. go to /etc/inittab and put like this:
    (comment id:3, uncomment id:5 // uncomment x:5:...gdm...)
    ## Only one of the following two lines can be uncommented!
    # Boot to console
    #id:3:initdefault:
    # Boot to X11
    id:5:initdefault:
    # Example lines for starting a login manager
    #x:5:respawn:/usr/bin/xdm -nodaemon
    x:5:respawn:/usr/sbin/gdm -nodaemon
    #x:5:respawn:/usr/bin/kdm -nodaemon
    #x:5:respawn:/usr/bin/slim >& /dev/null
    8.2. edit /etc/rc.conf and DON'T put back the gdm on daemons line.
      Alter the 1st lines ranging from LOCALE to USECOLOR to the ones you copied to a paper.
    8.3. comment/uncomment the locales on /etc/locale.gen as you have on paper and run in console
    locale-gen
    8.4. you're set, reboot and you're on gdm->gnome again. (still no vc/1 working tho )
    note: in your initial /etc/iniitab you had id:3 uncommented and gdm on daemons, so you would go automatically to gdm as you started your pc, but, what if something happens and you need to go to another mode before gdm runs? you couldn't do it easily with gdm on daemons.
    If you put it like I wrote above, when you turn on the pc, it's the same, you go automatically to the gdm, but, in case something happens, you can always go to another mode before gdm runs, by doing the following (read here on wiki or foruns, will put link when I find it)
    Pc reboots and you're on GRUB, press 'e', choose the kernel and press 'e' again, go to the end of the line where it says 'ro', and add a 3 to the end, to look like this 'ro 3', press 'b' (boot) and you're on mode 3 without going to gdm
      But ofc, this is just a choice, if you prefer to have as you had it, by all means, just put gdm on daemons line, and your /etc/inittab as initially, that's the beauty of Linux, it's to your fit
    Good Luck!

  • PL/SQL: Setting the Encoding does not work

    I'm traying to create my XML document in PL/SQL but the method
    setCharset('ISO-8859-1')
    does not work and is ignored. it works only with
    setCharset('UTF8').
    Does anybody know why??? Is this a bug??
    Thanks,
    Ashkan.

    Sorry, but all this does not work on 8.1.6.
    Current DB charset name is:
    SELECT VALUE FROM V$NLS_PARAMETERS
    WHERE PARAMETER = 'NLS_CHARACTERSET';
    VALUE
    WE8ISO8859P1
    I tried (step by step) the following:
    xmldom.setVersion( doc, '1.0' ); -- Works !
    xmldom.setCharset( doc, 'iso-8859-1' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'ISO-8859-1' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'ISO' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'WE8ISO8859P1' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'we8iso8859p1' ); -- DOES NOT WORK
    xmldom.setCharset( doc, '8859_1' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'US-ASCII' ); -- DOES NOT WORK
    xmldom.setCharset( doc, 'UTF8' ); -- Works !
    -- Build the DOM
    xmldom.writeToFile( doc, files.full_fname_xml, 'ISO-8859-1' ); -- DOES
    NOT WORK
    xmldom.writeToFile( doc, files.full_fname_xml, 'WE8ISO8859P1' ); -- DOES
    NOT WORK
    xmldom.writeToFile( doc, files.full_fname_xml, 'we8iso8859p1' ); -- DOES
    NOT WORK
    Alex

  • Oracle instant Client and unixODBC for Linux not work

    Hi experts,
    I have two Redhat EL 5. On the first Rehat(xxx.xxx.xxx.121 --> called Redhat1) I have installed Oracle 10g database server. On the second Redhat(xxx.xxx.xxx.123 --> called Redhat2) I want to connect to Oracle database server on xxx.xxx.xxx.121 via ODBC. But it does not work. Pls help me!
    I have done steps as following:
    Login to Redhat2 as root and type commands:
    1)Install Instant Client + sqlplus
    # rpm -ivh oracle-instantclient-basic-10.2.0.4-1.i386.rpm
    # rpm -ivh oracle-instantclient-sqlplus-10.2.0.4-1.i386.rpm
    2)Setting environment variable
    # LD_LIBRARY_PATH=/usr/lib/oracle/10.2.0.4/client/lib:${LD_LIBRARY_PATH}; export LD_LIBRARY_PATH
    # SQLPATH=/usr/lib/oracle/10.2.0.4/client/lib:${SQLPATH}; export SQLPATH
    3)Testing connection to Redhat1(Oracle DB server) using sqlplus
    # sqlplus abc/[email protected]:1521/lab2
    Connected.
    5)Begin to install unixODBC
    # rpm -ivh oracle-instantclient-odbc-10.2.0.4-1.i386.rpm
    # rpm -ivh unixODBC-2.2.11-7.1.i386.rpm
    # rpm -ivh unixODBC-devel-2.2.11-7.1.i386.rpm
    # rpm -ivh unixODBC-kde-2.2.11-7.1.i386.rpm
    6)After installation above packages I check for existing of odbc.ini and odbcinst.ini in /etc --> ok
    # ls /etc | grep odbc
    odbc.ini
    odbcinst.ini
    7) Tar unixODBC-2.2.14-linux-x86-32.tar.gz and copy file to /usr/local/bin, /usr/local/include, /usr/local/lib
    # tar -xzf unixODBC-2.2.14-linux-x86-32.tar.gz
    # ls /usr/local/bin/
    dltest isql iusql odbc_config odbcinst
    # ls /usr/local/include
    autotest.h odbcinstext.h odbcinst.h sqlext.h sql.h sqltypes.h sqlucode.h unixodbc_conf.h uodbc_extras.h uodbc_stats.h
    # ls /usr/local/lib
    libboundparam.la libgtrtst.la libodbccr.la libodbcinst.la libodbc.la
    libboundparam.so libgtrtst.so libodbccr.so libodbcinst.so libodbc.so
    libboundparam.so.1 libgtrtst.so.1 libodbccr.so.1 libodbcinst.so.1 libodbc.so.1
    libboundparam.so.1.0.0 libgtrtst.so.1.0.0 libodbccr.so.1.0.0 libodbcinst.so.1.0.0 libodbc.so.1.0.0
    # NLS_LANG=AMERICAN_AMERICA.UTF8; export NLS_LANG
    # TNS_ADMIN=/root; export TNS_ADMIN
    # ODBCINI=/etc/odbc.ini; export ODBCINI
    7)Retest sqlplus to Redhad1(Oracle database server) with local tnsname
    # sqlplus vonphoto/vonphoto@lab2
    SQL*Plus: Release 10.2.0.4.0 - Production on Sat Mar 27 03:20:55 2010
    Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining options
    8) Edit odbc.ini and odbcinst.ini
    ---odbcinst.ini
    # Included in the unixODBC package
    [Oracle 10g ODBC driver]
    Description = Oracle ODBC driver for Oracle 10g
    Driver = /usr/lib/oracle/10.2.0.4/client/lib/libsqora.so.10.1
    Setup =
    FileUsage =
    CPTimeout =
    CPReuse =
    ---odbc.ini
    [ora_dns]
    Driver = Oracle 10g ODBC driver
    DSN = ora_dns
    ServerName = xxx.xxx.xxx.121
    UserID = vonphoto
    Application Attributes = T
    Attributes = W
    BatchAutocommitMode = IfAllSuccessful
    BindAsFLOAT = F
    CloseCursor = F
    DisableDPM = F
    DisableMTS = T
    EXECSchemaOpt =
    EXECSyntax = T
    Failover = T
    FailoverDelay = 10
    FailoverRetryCount = 10
    FetchBufferSize = 64000
    ForceWCHAR = F
    Lobs = T
    Longs = T
    MetadataIdDefault = F
    QueryTimeout = T
    ResultSets = T
    SQLGetData extensions = F
    Translation DLL =
    Translation Option = 0
    DisableRULEHint = T
    TraceFile = /backup/sql.log
    Trace = Yes
    9)Testing the driver and the data source
    # odbcinst -q -d
    [Oracle 10g ODBC driver]
    # odbcinst -q -s
    [ora_dns]
    10) Test connection via ODBC from Redhat2(xxx.xxx.xxx.123) to Redhat1(xxx.xxx.xxx.121)
    # isql -v ora_dns
    isql: error while loading shared libraries: libreadline.so.3: cannot open shared object file: No such file or directory
    I have spent 4 days to search on the internet. But it still error.
    Pls help me.

    I don't understand your step 7 (the first step 7, actually).
    What is that unixODBC-2.2.14-linux-x86-32.tar.gz, where did it come from, and why are you doing all that?
    unixODBC should be installed after step 5.
    I guess that that is the cause of your problem.
    isql is not linked against readline at all on my RHEL 5 system.
    Do you notice any improvement after removing the files from that tar.bz file?
    Yours,
    Laurenz Albe

  • Oracle & PHP/Apache not working togather for unicode (working individually)

    hi, i have oracle xe zend core for oracle installed.
    When i insert data through aplication express or oracle sql developer its perfect. Unicode can be inserted and viewed, but when I try to view same data through php script it display ??? signs only english character show properly.
    Seems the unicode enviourment issue with php/apache and oracle communication, as php pages display uniode correctly when not taking data from oracle. I need help
    I have gone through globlizing_oracle_php_applications.pdf and have enabled mbstring, also php charset is utf8 i also used 'AL32UTF8' in connection string.
    Also if someone can provide a small sample php script to insert or view unicode data.
    thanks

    root the php module seems to be not working as the
    displayed index.php was just text page. I tried with
    apache2 as well but the result was the same.I don't believe the apache included with Solaris 10 includes PHP support; you will probably have to re-compile it . See the README file in /etc/apache for the actual config of the distributed version.

  • JDBC drivers not working in QA for multibye characters

    Hi,
    we have a problem with JDBC and deployed in DEV system and its works fine, but the same when we deply in QA its not working.
    the problem we are trying to use the simple select query from ORACLE DB.
    In ORACLE DB they converted the chenise char to English after that our JDBC drivers are not able to pick the multibite char.
    XI JDBC Adapter shows below error with a SELECT Query
    SELECT Query:SELECT * FROM APPS.ITEM_XI_V The Chinese character are converted to English and becomes multibye characters.
    Error:Error during conversion of query result to XML: java.sql.SQLException: Fail to convert between UTF8 and UCS2: failUTF8Conv
    Assumption is that the issue with older version of  ojdbc14.zip (JDBC Driver file)
    Reference:http://www.coderanch.com/t/299231/JDBC/java/UTF-conversion
    implement SAP Note 941317 in order to resolve the current issue.
    Note 941317 - XI / PI JDBC Adapter: Known Problems / Incompatibilities JDBC Driver Deployment. Refer to  SAP Note 831162
    after apply as per note for DEV system its works fine, but the same when we did for our QA system still the same error.
    Thanks,
    Venkat.

    Hi Gurus,
    Any idea where i am doing wrong.. in QA i am able to extract data with simple select statment with normal tables...
    Thanks,
    Venkat

  • SPSecurity.RunWithElevatedPrivileges Not Working for Read Only Permissions Users

    I have the following code in a method that generates tabbed web parts on any page in SharePoint 2010.
    The problem is that it will not work for users who have Read access only on a SharePoint site.  It will work when those users have Contribute access.  
    So even though I have elevated permissions in the code it does not actually elevate the permissions at the point where it is needed.
    if (panel != null)
    try
    using (SPLimitedWebPartManager wpManager = SPContext.Current.Web.GetLimitedWebPartManager(HttpContext.Current.Request.Url.ToString(), PersonalizationScope.Shared))
    try
    // Elevated previleges required for EXPORT and IMPORT. Else Users with normal read access will get errors.
    SPSecurity.RunWithElevatedPrivileges(delegate()
    // Retrieve the web part titles in the ConfigureTabs XML string for this tab.
    var webPartTitles = from t in xDocument.Descendants("webPart")
    where (string)t.Parent.Attribute("name") == (string)e.Item.DataItem
    select (string)t.Attribute("title");
    foreach (string wpTitle in webPartTitles)
    foreach (System.Web.UI.WebControls.WebParts.WebPart webPart in wpManager.WebParts)
    // Find the matched closed web part in WebParts collection
    if (webPart.Title == wpTitle && webPart.IsClosed == true)
    string errorMessage;
    //ADD EXPORT PROPERTY
    webPart.ExportMode = WebPartExportMode.All;
    MemoryStream stream = new MemoryStream();
    XmlTextWriter writer = new XmlTextWriter(stream, System.Text.Encoding.UTF8);
    // Export the closed webpart to a memory stream.
    wpManager.ExportWebPart(webPart, writer);
    writer.Flush();
    stream.Position = 0;
    XmlTextReader reader = new XmlTextReader(stream);
    // Import the exported webpart.
    System.Web.UI.WebControls.WebParts.WebPart newWebPart = wpManager.ImportWebPart(reader, out errorMessage);
    reader.Close();
    writer.Close();
    // Show the imported webpart.
    panel.Controls.Add(newWebPart);
    break;
    catch (Exception ex)
    // For debugging use only.
    Label label = new Label();
    label.Text = "Please check your XML configuration for error. " + Environment.NewLine + ex.Message;
    panel.Controls.Add(label);
    catch (Exception ex)
    // For debugging use only.
    Label label = new Label();
    label.Text = "Please Check SPContext.Current.Web is not null. " + Environment.NewLine + ex.Message;
    panel.Controls.Add(label);
    This snippet of code was originally pulled from a microsoft technet article on creating Tabbed web parts "the correct way" but it doesn't work in all scenarios.
    Is there a way to get this code working for Read/Visitors to a SharePoint site?

    From initial observation what I see is that your SPLimitedWebPartManager is not created from an elevated web. Try like below
    SPSecurity.RunWithElevatedPrivileges(delegate()
    using(SPSite elevatedSite = new SPSite(SPContext.Current.Site.ID))
    using(SPWeb elevatedWeb = elevatedSite.OpenWeb())
    using (SPLimitedWebPartManager wpManager = elevatedWeb.GetLimitedWebPartManager(HttpContext.Current.Request.Url.ToString(), PersonalizationScope.Shared))
    { //Rest of your code
    Geetanjali Arora | My blogs |

Maybe you are looking for