# The 12 Step program for a no-pm, no-invite, new yahoo cookie Curfloo # NOTE: IF you follow these instructions WITHOUT # (a.) adding some for giggles, # (b.) arbitrarily changing some for purposes known only to the moon, # (c.) scrambling the order just because there are flies in manure, # OR # (d.) leaving off some because your shoe came untied, # THEN it will work, # ELSE it most likely will not work. # 1. download curfloo from http://www.jfcinnovations.com/curfloo # 2. cd to some directory where you have write permissions # (example: you could make a new directory in your home directory, # mkdir -p ~/curfloo; cd ~/curfloo # ) # 3. copy this file and the curfloo.tar.gz file to that directory # (using the example above: you would have diff_floo and # curfloo.tar.gz in ~/curfloo/ # ) # 4. tar zxvf curfloo.tar.gz # 5. less curfloo-0.76b/README # 6. patch -p0 < diff_floo # 7. cd curfloo-0.76b # 8. make # 9. su # 10. make install # 11. exit # 12. curfloo diff -rduN curfloo-0.76b.orig/CFChatArea.C curfloo-0.76b/CFChatArea.C --- curfloo-0.76b.orig/CFChatArea.C Mon Aug 21 15:42:36 2000 +++ curfloo-0.76b/CFChatArea.C Sun Apr 28 03:09:50 2002 @@ -92,8 +92,8 @@ s; if (hascolor) { - s.setFore(cc_black); - s.tBold(); + s.setFore(cc_blue); +// s.tBold(); txt.style(s); sprintf(tmp,"%s entered the room", msg.who().c_str()); } @@ -110,7 +110,7 @@ s; if (hascolor) { - s.setFore(cc_black); + s.setFore(cc_red); s.tBold(); txt.style(s); sprintf(tmp,"%s left the room",msg.who().c_str()); @@ -185,9 +185,10 @@ if (hascolor) s.tBold(); if (msg.isSelf()) - s.setFore(cc_blue); + s.setFore(cc_cyan); else - s.setFore(cc_red); + s.setFore(cc_green); + s.tBold(); txt.style(s); txt.setText(msg.who()); sprintf(tmp,": %s\n",msg.msg().c_str()); @@ -214,7 +215,7 @@ if (msg.isSelf()) s.setFore(cc_blue); else - s.setFore(cc_red); + s.setFore(cc_yellow); who.style(s); who.setText(msg.who()); s.setFore(cc_yellow); @@ -255,7 +256,7 @@ if (msg.isSelf()) s.setFore(cc_blue); else - s.setFore(cc_red); + s.setFore(cc_green); who.style(s); who.setText(msg.who()); if (hascolor) diff -rduN curfloo-0.76b.orig/CFMainWin.C curfloo-0.76b/CFMainWin.C --- curfloo-0.76b.orig/CFMainWin.C Sat Oct 21 09:28:08 2000 +++ curfloo-0.76b/CFMainWin.C Sun Apr 28 02:47:00 2002 @@ -505,7 +505,7 @@ // stile.setFore(cc_white); // stile.setBack(cc_black); stile.setFore(cc_undef); - stile.setBack(cc_undef); + stile.setBack(cc_last); (*_chatarea).style(stile); (*_pmlistwin).style(stile); (*_profile).style(stile); diff -rduN curfloo-0.76b.orig/YahooMessage.C curfloo-0.76b/YahooMessage.C --- curfloo-0.76b.orig/YahooMessage.C Mon Dec 10 01:12:50 2001 +++ curfloo-0.76b/YahooMessage.C Sun Apr 28 02:55:05 2002 @@ -139,8 +139,8 @@ _mtype|=YH_MSG_ROOM_LEAVE_F; break; case pkt_invite: - parse(pkt.getPayload(),pkt.getLen(),&_msg,1,&_room,2,&_desc,3); - _mtype|=YH_MSG_INVITE_F; +// parse(pkt.getPayload(),pkt.getLen(),&_msg,1,&_room,2,&_desc,3); +// _mtype|=YH_MSG_INVITE_F; if (_pflag) _mtype^=YH_MSG_ERR_F; break; @@ -210,8 +210,8 @@ _mtype|=YH_MSG_SPEECH_F; break; case pkt_pm: - parse(pkt.getPayload(),pkt.getLen(),&_who,1,&_msg,3); - strip(_msg); +// parse(pkt.getPayload(),pkt.getLen(),&_who,1,&_msg,3); +// strip(_msg); _mtype|=YH_MSG_PM_F; break; case pkt_buddylist: { diff -rduN curfloo-0.76b.orig/YahooProto.C curfloo-0.76b/YahooProto.C --- curfloo-0.76b.orig/YahooProto.C Fri Jun 8 14:32:41 2001 +++ curfloo-0.76b/YahooProto.C Sat Apr 27 22:01:16 2002 @@ -483,6 +483,8 @@ char *ptr, *tptr, + *ptr2, + *tptr2, loginString[256], returnData[4096]; string @@ -493,7 +495,7 @@ sutl.straightReplace(" ","%20",username, true); sutl.straightReplace(" ","%20",passwd, true); - sprintf(loginString, "GET /config/ncclogin?.src=bl&login=%s&passwd=%s&n=1 " + sprintf(loginString, "GET /config/login?login=%s&passwd=%s&.chkP=Y " "HTTP/1.0\r\nAccept: */*\r\n\r\n\r\n", username.c_str(), passwd.c_str()); if (sock.open()) { @@ -506,7 +508,11 @@ logger.log("YahooProto::fetchCookie: read returned %d",i); return -3; } - if ((ptr=strstr(returnData,"Set-Cookie:"))==NULL) { + if ((ptr=strstr(returnData,"Set-Cookie: Y"))==NULL) { + logger.log("YahooProto::fetchCookie: no cookie in da cookie!"); + return -4; + } + if ((ptr2=strstr(returnData,"Set-Cookie: T"))==NULL) { logger.log("YahooProto::fetchCookie: no cookie in da cookie!"); return -4; } @@ -515,13 +521,26 @@ return -5; } *tptr=0; - while(((*ptr)!='v') && (ptr