!C99Shell v. 1.0 pre-release build #16!

Software: Apache/2.0.54 (Fedora). PHP/5.0.4 

uname -a: Linux mina-info.me 2.6.17-1.2142_FC4smp #1 SMP Tue Jul 11 22:57:02 EDT 2006 i686 

uid=48(apache) gid=48(apache) groups=48(apache)
context=system_u:system_r:httpd_sys_script_t
 

Safe-mode: OFF (not secure)

/usr/bin/X11/./../../share/java-1.5.0/../doc/gnome-python2-bonobo-2.10.0/   drwxr-xr-x
Free 5.11 GB of 27.03 GB (18.89%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     unknown.py (2.01 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#! /usr/bin/env python
import pygtk; pygtk.require("2.0")

import bonobo
import Bonobo
import Bonobo__POA
import CORBA, sys
import gc

gc.set_debug(gc.DEBUG_LEAK)

orb = CORBA.ORB_init(sys.argv)
bonobo.activate()

class PersistStream(Bonobo__POA.PersistStream, bonobo.UnknownBaseImpl):
    def __init__(self):
        bonobo.UnknownBaseImpl.__init__(self)

    # implementations of methods/attributes of "Interface" go here

    def load(self, content_type):
    print "PersistStream::load(content_type='%s')" % content_type

    def save(self, content_type):
    print "PersistStream::save(content_type='%s')" % content_type


ps = PersistStream()

def foo(*args):
    print args

listener = bonobo.Listener(foo)
listener.add_interface(ps.get_bonobo_object())

del ps
## How is it that the PersistStream servant instance is kept alive, I
## hear you ask?
##     Well, there's a signal connection from the 'destroy' signal of
## the ForeignObject to a bound method of the servant instance.  A
## bound method object contains an implicit reference to the instance
## to which it is bound.  On the other hand, the servant contains a
## reference to the ForeignObject.  This way, these two objects keep
## each other alive with mutual references.
##     When the 'destroy' signal is fired (when bonobo reference count
## drops to zero), the bound method in the servant is called, and it
## deletes the reference it has to the ForeignObject, thus destroying
## the signal connection (closure), consequently releasing the last
## reference to the servant.  At least that's my theory on how things
## work..


print "server-side boundary"
listener = listener.corba_objref() # from now on we work on client-side
gc.collect()
print "client-side"

print "query PersistStream"
ps = listener.queryInterface("IDL:Bonobo/PersistStream:1.0")
print ps
print "unref PersistStream"
if ps is not None:
    ps.unref()
gc.collect()

print ">>unref listener start"
# this should trigger final ref count -> destroy
listener.unref()
del listener
print "<<unref listener end"
gc.collect()


:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #16 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0034 ]--