View unanswered posts | View active topics It is currently Wed May 22, 2013 4:03 pm



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 66 posts ]  Go to page 1, 2, 3, 4, 5  Next
 BBSocket 0.0.5 
Author Message
BBDinosaur
User avatar

Joined: Wed Dec 13, 2006 7:33 pm
Posts: 263
Location: Pretoria, South Africa
Reply with quote
Post BBSocket 0.0.5
Get the newest version (0.0.5) in this post.

This plugin creates a socket interface to Blackbox.

By default the plugin listens on port 25225 for incoming TCP connections.

Once an external plugin connects and authorizes itself, it can interact with blackbox using broams and also use some of the functions defined in the bbAPI. Any number of plugins can be connected, subject to whatever limitations your system may impose on the number of open connections. From 0.0.5 the plugin also supports multiple listening sockets.

A complete list of functions which can be used and a readme are included in the latest release (0.0.5).

Plugins using BBSocket
bbPyInterWeatherExtraviganza! by Tres`ni

Older Releases:
0.0.1 (Official, at bottom of this post)
BBSocket 0.0.2 (Offical)
BBSocket 0.0.2m (Modified by Tres`ni)
BBSocket 0.0.3 (Official)
BBSocket 0.0.4 (Official)


Attachments:
File comment: Test program
TestProg.zip [2.54 KiB]
Downloaded 283 times
File comment: The BBSocket plugin
BBSocket_001.zip [5.26 KiB]
Downloaded 269 times


Last edited by Carsomyr on Sun Jan 14, 2007 9:06 pm, edited 3 times in total.

Tue Dec 19, 2006 2:12 pm
Report this post
Profile WWW
Sponsored Links
Google Adsense


Moderator
User avatar

Joined: Sat Dec 11, 2004 12:06 am
Posts: 1310
Location: Violent Paradise
Reply with quote
Post 
Hmmm, this looks rather interesting to me since making use of sockets in Python is fairly simple.

Haven't got time to check it out now as I am finishing up a project.

It seems to me though, that to be really useful, a user would need to be able to assign the socket # via a BBSocket.rc - then just renaming the DLL and putting it in a separate folder in the ..\plugins directory would make it accessible to the users app... and many apps could make use of copies of the DLL.

I assume that's where your going with this as it wouldn't make much sense remaining just a one shot deal :)

_________________
I'll have the roast duck... with mango sauce and a large helping of BB4Win Wiki: http://wiki.bb4win.org/wiki/Main_Page


Wed Dec 20, 2006 9:25 am
Report this post
Profile
BBDinosaur
User avatar

Joined: Wed Dec 13, 2006 7:33 pm
Posts: 263
Location: Pretoria, South Africa
Reply with quote
Post Updated version
Glad to see somebody interested. :D

I updated the plugin so that you can specify the socket in the BBSocket.rc file . As a test it now also supports two concurrent connections (the second connection will be dropped if any additional connections are attempted) and can call the GetBBVersion() and GetOSInfo() functions from BBApi.h for the connected program.

If anybody has a specific function from BBApi.h they would like available let me know, otherwise they will be added starting with the easiest ones.

The limit on the number of concurrent connections should be removed soon.


Attachments:
File comment: Updated version of BBSocket (Test program included)
BBSocket_002.zip [11.53 KiB]
Downloaded 247 times
Wed Dec 20, 2006 2:23 pm
Report this post
Profile WWW
Site Admin
User avatar

Joined: Tue Jan 25, 2005 1:13 am
Posts: 741
Reply with quote
Post 
I uploaded the news on bb4win http://www.bb4win.org/news.php/ Welcome aboard!


Wed Dec 20, 2006 3:21 pm
Report this post
Profile
BBAdult

Joined: Mon Mar 20, 2006 9:00 pm
Posts: 26
Reply with quote
Post 
This has potential. I too am very intrested to see how this plugin progresses.
My PSP is currently one big wifi remote control and id love to add blackbox to its list.


Thu Dec 21, 2006 4:33 pm
Report this post
Profile
Moderator
User avatar

Joined: Sat Dec 11, 2004 12:06 am
Posts: 1310
Location: Violent Paradise
Reply with quote
Post 
I got a a little time to play with BBSockets this morning. So far, I have only tested a client written in Python but, it works pretty much as advertized :)

I am running into a problem however.

I ran my test client a couple of times and all seemed well. There might have been maybe 30 seconds to 2 minutes sometimes while I was changing a few things.

Then I got up, got myself another cup of joe and toasted up a bagle - that took maybe 5 - 7 minutes. When I got back, I ran my client again and the connection was refused.

Although I don't understand a lot about C\C++, I don't see anything in your code that would indicate that it is supposed to timeout after that short a period. Plus I was under the impression that BBSocket was a 'serve forever' type socket server.

Anyway, here's the Python code I am using in case you want to check if I am doing something unusual (I don't think so) and a couple screen shots that further explain what I'm talking about.

FYI - single line comments in Python begin with the pound sign (#), I have heavily commented the code in case you are not familiar with Python. Pretty sure you'll be able to understand it tho...
Code:
#!python
# bbsocket_test.py

import socket


# simple socket client:
def sendBroam():
    try:
        # create socket object:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
   
        # if not connected after 2 seconds, --> except:
        s.settimeout(2)
   
        # connect to BBSocket:
        s.connect(('127.0.0.1', 25225))
   
        # send a bro@m:
        s.send('@BBBalloon Show \"Hello from Python!\"')
   
        # check for BBSocket reply:
        response_string, server = s.recvfrom(25225)
   
        # print the response:
        print 'BBSocket response: ',response_string
   
        # send connection shutdown message:
        s.shutdown(1)
   
        # close the connection:
        s.close()
   
    # if we timed out above, we're here:
    except socket.error, msg:
       print 'Error:', msg


def main():
    sendBroam()


if __name__ == '__main__':
    main()


Attachments:
File comment: connection accepted
connect-ok.png
connect-ok.png [ 55.79 KiB | Viewed 3841 times ]
File comment: connection refused
connect-refused.png
connect-refused.png [ 12.5 KiB | Viewed 3778 times ]

_________________
I'll have the roast duck... with mango sauce and a large helping of BB4Win Wiki: http://wiki.bb4win.org/wiki/Main_Page
Tue Dec 26, 2006 1:59 pm
Report this post
Profile
Site Admin
User avatar

Joined: Sun Dec 05, 2004 8:59 pm
Posts: 1316
Location: Boise, Idaho
Reply with quote
Post 
My modification to allow infinite client connections (not that it's really needed, but I think it's more realistic than 1 or 2 connections.)

Please expand on it from here ;) I just thought you might like to have this.


Attachments:
File comment: build
bbSocket.dll [13 KiB]
Downloaded 231 times
File comment: source
bbSocket.cpp [6.49 KiB]
Downloaded 202 times
File comment: All running at the same time
bbsocket-multi.png
bbsocket-multi.png [ 128.97 KiB | Viewed 3852 times ]

_________________
-- Brian
Tue Dec 26, 2006 10:42 pm
Report this post
Profile ICQ YIM WWW
Site Admin
User avatar

Joined: Sun Dec 05, 2004 8:59 pm
Posts: 1316
Location: Boise, Idaho
Reply with quote
Post 
Okay so I was bored and wanting to see how far I could take this quickly, figured an easy thing to do would be to implement menus, so I have been. Right now I've got MakeMenu, DelMenu, MakeMenuNOP, and ShowMenu. Also changed all the if statements to strnicmp to be case insensitive.

It's not "pretty" but it's functional ;) Carsomyr I really don't want to take over this plugin or anything I swear, I just get on coding trips and will keep going until I burn out (which can be rather quickly sometimes, ask snkmchnb :P ) I'm going to PM you the source as I have to head to work now.

I am not releasing this build as it really does nothing at this point. MakeMenuNOP doesn't allow much functionality :P

[edit. Got MakeMenuItem and MakeSubmenu working too]
[edit2. All menu api functions are working]


Attachments:
bboscket-menus.png
bboscket-menus.png [ 26.28 KiB | Viewed 3819 times ]

_________________
-- Brian
Tue Dec 26, 2006 11:34 pm
Report this post
Profile ICQ YIM WWW
Moderator
User avatar

Joined: Sat Dec 11, 2004 12:06 am
Posts: 1310
Location: Violent Paradise
Reply with quote
Post 
OK, so I must be getting the 'gest' of BBSocket wrong because even with tresni's build BBSocket stops responding to requests if no conection is recieved after 5 minites or whatever the timeout is set to.

So, let me get this straight... for every BBSocket session I have to first do a @BBCfg.plugin.load BBSocket --> do my thing and then, afterwards --> @BBCfg.plugin.load BBSocket to unload it so it is reset the next time I want to use it?

Also, tresni's version response returns non ascii chars, that creates a problem if I need to make use of the response in my code...

I'm not complaining here, just trying to understand how to best use this from a python point of view.

I already have an idea for an applet that would use BBInterface for the GUI, I just need to know the ground rules before I can actually start experimenting.

Along the lines of this idea I have, I would need to have both a socket server to accept bro@ms passed via BBSocket as well as a socket client to send bro@ms it can pass to the core. I'm not quite sure how this is done on a single socket - it would seem to me that collisions would be inevitable - not to mention 2 servers on the same socket at the same time...

Then again, maybe I'm being a bit too ambitious for the intentions of this plugin :?

_________________
I'll have the roast duck... with mango sauce and a large helping of BB4Win Wiki: http://wiki.bb4win.org/wiki/Main_Page


Wed Dec 27, 2006 1:13 am
Report this post
Profile
BBDinosaur
User avatar

Joined: Fri Jan 27, 2006 4:16 am
Posts: 794
Location: Karlstad, Sweden
Reply with quote
Post 
Havent had a chance to look at this one yet, but it sounds like a cool idea :D

You should however (if you havent already) add an option for "Bind IP" in the configuration, and default to 127.0.0.1. Also, the port should be configurable. It would suck if some skript-kiddie wrote a worm that scanned for bbSocket and executed the shutdown broam :D

Cheers,
Christopher

_________________
Don't forget to check the BlackBox FAQs.

Jabber: noccy@jabber.se | Web: www.noccy.com | Blog: Minimal Security


Wed Dec 27, 2006 4:05 am
Report this post
Profile ICQ YIM WWW
Site Admin
User avatar

Joined: Sun Dec 05, 2004 8:59 pm
Posts: 1316
Location: Boise, Idaho
Reply with quote
Post 
crowmag wrote:
OK, so I must be getting the 'gest' of BBSocket wrong because even with tresni's build BBSocket stops responding to requests if no conection is recieved after 5 minites or whatever the timeout is set to.

So, let me get this straight... for every BBSocket session I have to first do a @BBCfg.plugin.load BBSocket --> do my thing and then, afterwards --> @BBCfg.plugin.load BBSocket to unload it so it is reset the next time I want to use it?

It shouldn't time out, I'll play with what I have here and see if I can help figure it out. May be that the accept needs a keep alive option. That may be the problem.. Except it looked like your script was reconnecting each time so....

So the answer to the second question is that you shouldn't have to.
Quote:
Also, tresni's version response returns non ascii chars, that creates a problem if I need to make use of the response in my code...

I'm not complaining here, just trying to understand how to best use this from a python point of view.


<WRONG>
Likely because I'm using MSVC.Net 2005 which defaults to UNICODE iirc, I'll see if I can figure out how to convert to ascii. I'll debug and see if I can figure it out ;)
</WRONG>


[edit] Okay, as far as I can tell the info sent after GetBBVersion() is directly from the core so there should not be any non-ascii chars that I know of, I just tested with xoblite though as that's my shell of choice.

Quote:
I already have an idea for an applet that would use BBInterface for the GUI, I just need to know the ground rules before I can actually start experimenting.


I thought about trying to implement windows, but realized I didn't know of anyway to paint them.. I could do a bunch of wrapper functions for painting, but that seemed like a pain in the ass at the moment (excuse my French as we American's say, apologizes to any French [or Quebec] people)

[edit]What I'm trying to say here is that I think BBInterface + bbSocket is the way to go. The ground rules are that bbSocket should be loaded at startup and should work from there on out. See below for more.

Quote:
Along the lines of this idea I have, I would need to have both a socket server to accept bro@ms passed via BBSocket as well as a socket client to send bro@ms it can pass to the core. I'm not quite sure how this is done on a single socket - it would seem to me that collisions would be inevitable - not to mention 2 servers on the same socket at the same time...

BBSocket passes all broams to all connected clients.. You just need to read the incoming data. TCP is 2 way communication. The test program will show this in action.

noccy wrote:
Havent had a chance to look at this one yet, but it sounds like a cool idea

I agree, when someone proposed it I thought about giving it a shot, but finals and what not were coming up and my son went into the hospital so... I'm glad someone did it though!

Quote:
You should however (if you havent already) add an option for "Bind IP" in the configuration, and default to 127.0.0.1. Also, the port should be configurable. It would suck if some skript-kiddie wrote a worm that scanned for bbSocket and executed the shutdown broam


I agree. In my pm to Carsomyr I told him that I thought every script/plugin accessing the server should have to be "authorized" by the user on first usage, just like skype does for 3rd party programs. This way there would be little chance of something maliciously hijacking your computer through the socket. At the current time there is little that can be done I personally believe given that the only API function that could be malicious is not accessible (BBExecute) through bbSocket. Now a combinations of plugins with bbSocket could lead to issues (BBRunBox, broambox, uberbox, or any other plugin that accepts a command through bro@m) but that would require a theme or something similar to exploit at this time.

P.S. I'm off work and back to coding :P

_________________
-- Brian


Wed Dec 27, 2006 4:36 am
Report this post
Profile ICQ YIM WWW
Site Admin
User avatar

Joined: Sun Dec 05, 2004 8:59 pm
Posts: 1316
Location: Boise, Idaho
Reply with quote
Post 
Okay so 1 more build.. Just for the hell of it, no guarentees this one does not blow up your computer though :P

Added Keep-Alive which helped with letting the TestProg idle forever :P Less drops there. I was unable to reproduce the connection refused after waiting for about 15 minutes. Still worked for me... Not sure what to say about it, let me know if it's still happening, I'll throw python on here and see if using your exact script brings the problem.

All the menu stuff is working, but be very careful, it will bite you in the ass if you use it wrong! Strings are not trimmed, so a space after a comma means a space for the first character. Commas can only be used in quotes, which are not stripped (I know, sucks.. Maybe I'll fix that later..) Otherwise commas are the deliminator. Strings do not need to be quoted. A bool is a 1 for true or 0 for false.

All functions basicly follow the BBApi.h declarations. Instead of using a Menu* though you will be given a unique (to your plugin instance) id for the menu when you successfully call MakeMenu or MakeNamedMenu.

Do not call ShowMenu() twice on the same id! Blackbox does not allow it!

Spaces after the commas below are for readability only!
Code:
MakeMenu(string title)
MakeNamedMenu(string title, string unique_name, bool popup)
MakeSubMenu(int menuid, int submenuid, string title)
MakeMenuItem(int menuid, string title, string cmd, bool indicator)
MakeMenuItemInt(int menuid, string title, string cmd, int val, int minval, int maxval)
MakeMenuItemString(int menuid, string title, string cmd, string val)
MakeMenuNop(int menuid, string title)
ShowMenu(int menuid)
DelMenu(int menuid)


Only MakeMenu and MakeNamedMenu return anything normally. If anything goes wrong the functions will return an error string starting with "error:" followed by a message. (Right now it's always the same message..) Also don't freak out if you have two scripts both writing to menu id 0, that's okay as each script has its own menus.

I added preliminary authorization code. For a script to make use of bbSocket it must now connect() and then send("AUTHORIZE name") capitalization does not matter. The user will then be prompted to allow name to use bbSocket. This setting is saved in the bbsocket.rc file so after the first time the user will not be asked again (so if they answer incorrectly or want to change the permission later they have to edit the bbsocket.rc file)

Once the user has decided to allow/deny a socket plugin, bbSocket will send("AUTHORIZED") or send("NOT AUTHORIZED") back to the script to let it know its status. Until the user accepts or rejects a script bbSocket will make no response to anything the script sends. If a script is denied any further communication will be replied to with send("NOT AUTHORIZED").

[edit] Forgot to mention: bbsocket.localHostOnly: true/false in the bbsocket.rc will set whether bbsocket should bind to the localhost or any address. By default it binds localhost only (127.0.0.1). That's all..

[edit 2] Menu Example
Code:
MakeMenu(test) returns 0
MakeMenuItem(0,test 2,@broam,1)
MakeMenuItemNop(0,---------)
MakeMenuItemString(0,edit me,@edited,my string)
MakeMenuItemInt(0,numbers,@number,2,0,100)
ShowMenu(0)


Attachments:
File comment: source
bbSocket.cpp [15.28 KiB]
Downloaded 157 times
File comment: build
bbSocket.dll [22.5 KiB]
Downloaded 202 times

_________________
-- Brian
Wed Dec 27, 2006 10:02 am
Report this post
Profile ICQ YIM WWW
Moderator
User avatar

Joined: Sat Dec 11, 2004 12:06 am
Posts: 1310
Location: Violent Paradise
Reply with quote
Post 
Haven't messed with the menu yet, still trying to figure out why it keeps dropping out.

OK, so I tried out this new build this morning - still timing out. Got frustrated and decided to just walk away from it for a while.

Working with the coman line script was part of the frustration and working at an interactive python prompt ... well forget that!

In the intrim, tresni's old sig came to mind - 'inovation through laziness'

So...

I made a little gui app that has a 'connect' button as well as a 'send' I just keep pressing every now and then to send a bro@m.

When the connect button is pressed, success or failure is logged to foolog.txt along with the current time.

When the send button is pressed, success or failure is logged to foolog.txt along with the current time.

logs are appended.

I also stripped out all un-needed code, basicly just create the socket object|connect|send.

I'll post the code fore the gui app so you can see what I'm doing but it won't be usable directly unless you have the XElements C++ lib\Python module installed. One should be able to port it to Tkinter or other gui toolkit fairly easily (all those 'lbl_spacer's are just for layout, like spacer.gif's).

If you don't want to mess with a gui, just look at the 'Events' section and forget the rest.

NOTE: After a failure, simply unloading\reloading bbSocket is not enough (that's the last failure in the log). I also have to quite the app and re-execute it before a success.

The log file say's it all:
Code:
connect success: Wed Dec 27 16:10:18 2006
success - bro@m sent: Wed Dec 27 16:10:32 2006
success - bro@m sent: Wed Dec 27 16:13:05 2006
success - bro@m sent: Wed Dec 27 16:17:31 2006
success - bro@m sent: Wed Dec 27 16:22:43 2006
success - bro@m sent: Wed Dec 27 16:27:19 2006
success - bro@m sent: Wed Dec 27 16:32:46 2006
success - bro@m sent: Wed Dec 27 16:36:56 2006
success - bro@m sent: Wed Dec 27 16:43:17 2006
success - bro@m sent: Wed Dec 27 16:53:04 2006
success - bro@m sent: Wed Dec 27 16:56:56 2006
success - bro@m sent: Wed Dec 27 17:06:03 2006
success - bro@m sent: Wed Dec 27 17:12:51 2006
failure - bro@m not sent: Wed Dec 27 17:19:38 2006
connect failure: Wed Dec 27 17:19:43 2006
connect failure: Wed Dec 27 17:21:14 2006
connect success: Wed Dec 27 17:21:31 2006


GUI App Code:
Code:
#!python
# bbFoo.pyw

import pyxel, socket

# ========================= ..:: GLOBAL VARIABLES ::.. =========================

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

class myXApp(pyxel.XApp):

# ============================== ..:: EVENTS ::.. ==============================

    def onCommand(self,xe,cde):

        # global variable decalations:
        global s

        if ((xe.name() == 'connect button') & (cde == pyxel.BN_CLICKED)):
            try:
                s.connect(('127.0.0.1', 25225))
                lbl_status.setText('Connected !')
                import time
                DateTime = time.ctime(time.time())
                foolog = open('foolog.txt', 'a')
                foolog.write('connect success: ' + DateTime + '\n')
                foolog.close()
            except socket.error, msg:
                lbl_status.setText('Connection Failure !')
                import time
                DateTime = time.ctime(time.time())
                foolog = open('foolog.txt', 'a')
                foolog.write('connect failure: ' + DateTime + '\n')
                foolog.close()

        if ((xe.name() == 'send button') & (cde == pyxel.BN_CLICKED)):
            try:
                sendstring = txtbox_send.getText()
                s.send(sendstring)
                lbl_status.setText('Sent bro@m Successfully !')
                import time
                DateTime = time.ctime(time.time())
                foolog = open('foolog.txt', 'a')
                foolog.write('success - bro@m sent: ' + DateTime + '\n')
                foolog.close()
            except socket.error, msg:
                lbl_status.setText('Failure, bro@m not sent !')
                import time
                DateTime = time.ctime(time.time())
                foolog = open('foolog.txt', 'a')
                foolog.write('failure - bro@m not sent: ' + DateTime + '\n')
                foolog.close()

# ============================ ..:: GUI Stuff! ::.. ============================

app = myXApp('xapp')
app.init('bbFoo - bbSocket Test')
app.manager(1)

lbl_spacer = pyxel.XLabel('')
lbl_spacer.init(app)
lbl_spacer.placement(0,1,100,2,0,0,1)
lbl_spacer.setText('')

btn_connect = pyxel.XButton('connect button')
btn_connect.init(app)
btn_connect.placement(10,2,100,21,1,0,1)
btn_connect.setText("Connect")

grp1 = pyxel.XGroup('')
grp1.init(app)
grp1.placement(0,0,100,52,1,0,1)

lbl_spacer = pyxel.XLabel('')
lbl_spacer.init(grp1)
lbl_spacer.placement(3,4,2,21,0,0,0)
lbl_spacer.setText('')

txtbox_send = pyxel.XEdit('send string')
txtbox_send.init(grp1)
txtbox_send.placement(2,4,100,21,1,0,0)

btn_send = pyxel.XButton('send button')
btn_send.init(grp1)
btn_send.placement(2,4,36,21,0,0,0)
btn_send.setText("Send")

lbl_spacer = pyxel.XLabel('')
lbl_spacer.init(grp1)
lbl_spacer.placement(3,4,2,18,0,0,1)
lbl_spacer.setText('')

lbl_statusLabel = pyxel.XLabel('')
lbl_statusLabel.init(grp1)
lbl_statusLabel.placement(8,4,40,18,0,0,0)
lbl_statusLabel.setText('Status :')

lbl_status = pyxel.XLabel('')
lbl_status.init(grp1)
lbl_status.placement(8,4,100,18,1,0,1)

# ============================ ..:: ON EXECUTE ::.. ============================

app.show(1)
app.run()
app.done()


Attachments:
bbFoo.png
bbFoo.png [ 15.08 KiB | Viewed 3720 times ]

_________________
I'll have the roast duck... with mango sauce and a large helping of BB4Win Wiki: http://wiki.bb4win.org/wiki/Main_Page
Wed Dec 27, 2006 10:55 pm
Report this post
Profile
Site Admin
User avatar

Joined: Sun Dec 05, 2004 8:59 pm
Posts: 1316
Location: Boise, Idaho
Reply with quote
Post 
crowmag: Can you zip your blackbox folder and email it to me? Other than that, what's your setup? XP/98/2K? Anything special I should know? I'm grabbing python right now. If I figure this out it will be my last contribution to bbSocket till Carsomyr says I can do more :P

[edit. Found the problem with bro@m responses, bbSocket was using PostMessage which doesn't wait for a return, this was causing issues as the buf was being released before the message was processed. SendMessage resolved it for now, just have to see if there are any other issues arising from the change.

Also got python installed and am testing your console script using Python UI, added a time stamp to it so I could get a good feel of what was going on. Will update when I have info.]

[edit 2. I still can not reproduce the connection refused thing at this time:
Code:
>>> ================================ RESTART ================================
>>>
Wed Dec 27 19:25:27 2006
BBSocket response:  @test hello
>>> ================================ RESTART ================================
>>>
Wed Dec 27 19:28:01 2006
BBSocket response:  @test hello
>>> ================================ RESTART ================================
>>>
Wed Dec 27 20:11:26 2006
BBSocket response:  @test hello


As you can see there was over half an hour between the last 2 connections and the computer even went to screensaver and locked. The only thing I haven't tested this with is a suspended or hibernated computer..]

[edit3: over two hours later it's still going strong:
Code:
>>> ================================ RESTART ================================
>>>
Wed Dec 27 21:00:24 2006
BBSocket response:  @test hello
>>> ================================ RESTART ================================
>>>
Wed Dec 27 22:20:33 2006
BBSocket response:  @test hello
]

_________________
-- Brian


Thu Dec 28, 2006 1:42 am
Report this post
Profile ICQ YIM WWW
Moderator
User avatar

Joined: Sat Dec 11, 2004 12:06 am
Posts: 1310
Location: Violent Paradise
Reply with quote
Post 
Well, good news and bad... I found the culprit, it's BBSky.

After unloading it:
Code:
connect success: Thu Dec 28 11:23:23 2006
success - bro@m sent: Thu Dec 28 11:23:26 2006
success - bro@m sent: Thu Dec 28 12:59:15 2006

I guess I'll have to just look out the window :(
Oh!, wait... where'd I put that Yahoo Weather XML to HTML parser I wrote? :idea:

To be continued...

_________________
I'll have the roast duck... with mango sauce and a large helping of BB4Win Wiki: http://wiki.bb4win.org/wiki/Main_Page


Thu Dec 28, 2006 6:20 pm
Report this post
Profile
Sponsored Links
Google Adsense


Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 66 posts ]  Go to page 1, 2, 3, 4, 5  Next


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.