2012/11/18

putty 0.62 with password saving feature

Hi all, recently, I used putty as ssh login tool a lot. But I found one feature was missing: password saving. Yes, as you can imagine, typing ssh account password every day is pretty annoying. So I added this feature to putty 0.62. You can download from google drive:
1) for linux : putty.linux.0.62.zip
2) for windows : putty.windows.0.62.zip
3) source zip : putty.src.0.62.zip

If you are in china, google drive is not accessible. You can download from
Kuaipan:

1) for linux : putty.linux.0.62.zip
2) for windows : putty.windows.0.62.zip
3) source zip : putty.src.0.62.zip

Hope It helped. Have fun :)



2012/05/30

Nginx - core utility - 3



ng's core utilities lie in the folder: src/core. Most of them are elegantly coded.

ngx_array_t :

Allocate space from specific memory pool, double the space if full. when need to destroy, shrink memory space to zero.

ngx_buf_t :

One of the beautiful pieces. It supports chain of bufs, that is implemented as allocating one big cake first, and splice equally for each one scheme. When applying for a buf, return the current buf of the chain, or pcalloc one. And update chain operation is to move all elements in busy and out chains to head of free chain.

ngx_conf_t :
to be continued ...

2012/05/29

Excellent Aphorisms

1. Give me your absolutely best, you hear me, your ABSOLUTELY BEST.
2. Never, never, never, never give up.
3. Good leaders are able to take people where they want to be, and outstanding leaders are capable of leading them to the place where they should be but never thought of.
4. Shallow men believe in luck, strong men believe in cause and effect.

2012/05/28

Our Wedding

2012.6.5 We talked about the wedding photo, and decided to take one on 6.6. I planned a great proposal for us. It is NOT going to happen at where or on which piece of ground you might expect. I REALLY hope that was romantic &  surprised. Cross fingers for us.

2012.6.4 My baby complained about when I was about to proposal.

2012.5.29 We made an online appointment for our marriage certificate.

2012.5.28 We agreed on the date(Jun. 12) of applying for marriage certificate.

Delicious food

2012.5.26 We went to Rasasayang at Sea World and tried the Thai food, because we watch the documentary film - A Bite of China, which presented by CCTV -1. This show is awesome, and totally increase our appetite.


2012/05/25

Gdb Cheat Sheet



1 Set gdb to follow fork() or not

set follow-fork-mode parent|child

2 If want to debug both parent and child process (default is on)

set detach-on-fork off

3 Switch between parent and child process
info inferiors
inferior #inferior_number

2012/05/24

Sanya Travel 2012

2012 travel destination is Sanya, Hainan.
Travel schedules on Jun 15, 2012.

2012 Tencent Hackathon

Hey guys, I signed up the Tencent Hackathon which scheduled on Jun. 9 - 10, 2012. Note that the whole process lasts 33 hrs, and take snaps if necessary. It seems pretty fun. The better news is that I got a team of four excellent colleagues. We got a great idea, and feel like we are going to be very high in the future event.

Lately, I read lots of hackathon news from TechCrunch, NYC, YCombinator etc. I love hackathon and deadly want to be part of it. H5ere it comes.

Today we discussed the poster design, idea presentation, and even the domain name register. The domain part is my favourite one.

We discussed the UI design and user interactions details, and also revised the recommend algorithms. It's time to take off. Hang on ……

This morning I did some stupid thing: write a shell script with 'rm *' in it. Then I learned some geek trick to alias the real command.

The day came. Come on, guys, rock and roll, it's party time for geeks. The most important thing is have fun as much as you can.

Live from Tencent Hackathon: our idea comes top ranking.  After 48 hours fighting, our team won the best ** award.

To be continued ...

2012/01/05

Nginx - overview - 2



The source folder constructs as:

core -- the core data structures and functions.

event -- event-related data structure etc.

http -- http protocol specific data structures etc.

mail -- since ng also acts as mail server.

misc -- some miscellaneous files.

os -- ng supports multiple os(s), os specific files.

I suppose that Igor is an organized guy in code, since when you compile ng project, no compile warning is outputed. You may be aware that Igor turned on gcc flags: -Wall -Wno-unused-parameter -Wunused-function, -Wunused-variable, -Wunused-value.

I mainly focus on core, event, and http, others might be omitted.

In core folder, many basic data structures are implemented without importing third party library. I wonder why Igor bother to do this. After one month reading, I figured it out: the efficiency concern. Importing extra third party means giving your efficiency control to other unknown guys. Put yourself in third party developers' shoes, at some design trade-off, you could achieve better generic goal by scarifying some time efficiency and memory space. Ooooh, no, wait a minute, that's exactly not what we want. To support high concurrency, we must try very hard to be fast and occupy less memory. Then, you get the point.

To address the structure or design clear, I will posts some picture or flow chart if necessary. Draw tool is avaiable here(http://www.graphviz.org/).

Nginx - preface - 1



Lately, the design of nginx attracted my attention. So, I started to hack the nginx source and try to deep understand inside. FYI, you can download the source code from nginx.org(Or direct download from http://sharesend.com/20amd). FYI, the term "ng" is short for nginx.

The recommended version choice is 1.1.4. The reasons lie as follows:
1) The total lines is about 100,000. With my limited time, this could be the better choice.
2) I've been using this version for a while, kind of familiar.
3) The main feature of HTTP server are ready to go.

After days of search, I found these following related resources available. Hope it would save you bunch of time :)
1)LXR http://lxr.evanmiller.org/http/source/ (Only support version 1.0.11 and 1.1.12)
2)Geek blog http://blog.sina.com.cn/s/blog_677be95b0100iivb.html (Brief introduce the structure, design pattern, and config specifictions etc. unfortunately, the post is written in Chinese.)
3)Nginx wiki http://wiki.nginx.org (Read the doc and search over the community as you need.)
4)Linux man http://linux.die.net/man/ (Geek like you , may not need this.)
5)Dev guide http://www.evanmiller.org/nginx-modules-guide.html (Advanced tutorial for guys that want to get their hands dirty. )

Maybe some day, another guy would add this blog to the tail of his recommend list.

Just as Linus said, “RTFSC", Let's do this.