Saturday, November 19, 2011

Frequency, Period, Amplitude and Wavelength

Frequency is the number of waves per unit time.
Period is the reciprocal of that - the duration of a single wave. 
Amplitude is the magnitude of the wave - how high it goes on the y axis. 
Wavelength is basically the same thing as period - the length of a single wave on the x axis.

Thursday, October 27, 2011

Dying Moslem see Jesus: Is Jesus the Son of God?

Muslim sees Jesus in Toronto, Canada
by Geoff Waugh on Monday, September 5, 2011 at 6:34am
Nasir SiddikiLeft to Die

By age 34, Nasir Siddiki, a successful businessman, had made his first million, but money meant nothing to him on his deathbed. Diagnosed with the worst case of shingles ever admitted to Toronto General Hospital , his immune system shut down and doctors left him to die.

The next morning I woke in a sterile room on the eighth floor of the hospital, my skin burning as though someone had doused me in gasoline and lit a match. I felt on fire from the inside out.

My doctor arrived and looked at me in wonder. “The blisters are multiplying so fast I can literally watch them grow,” he said. ‘”Your body isn’t fighting back.”

The next morning, in addition to shingles, I had chicken pox from head to toe. I was put in strict isolation. That evening my temperature soared to 107.6 degrees — hot enough to leave my brain permanently scrambled.

For days I continued to deteriorate. My nerve endings became so inflamed that a hair drifting across my skin sent shock waves of fire rippling through my body. By week’s end, I was listed in critical condition.

My Last Hope

In life, I’d been bold, self confident, a risk taker. But facing death, I was terrified. I had no idea what might await me on the other side. I’d been raised as a Moslem in London , England , and I understood Allah was not a god who heals.

My only hope was in medicine.

I eventually slipped so close to death that the doctors didn’t know I could hear them when they examined me. “His immune system has simply shut down,” one of them said.

“He’s dying,” the other confirmed. “His immune system must be compromised by AIDS.”

I don’t have AIDS! I wanted to shout, but I couldn’t form the words. Then it hit me. He said I’m dying!

The doctors spoke quietly to my co-worker, Anita. “In a few hours he’ll be dead,” they said. “If by some miracle he lives, he’ll probably be blind in his right eye, deaf in his right ear, paralyzed on his right side and he may be severely brain damaged from the high fever.”

Then they left.

They left me here to die! I felt like a drowning man going down for the third time. Gathering my strength I whispered a prayer. “God, if you’re real, don’t let me die!”

In His Presence

During the darkest hour of the night, I woke and saw a man at the foot of my bed. Rays of light emanated from him, allowing me to see his outline. I couldn’t see his face, it was too bright. No one had to tell me, I knew it was Jesus.

The Koran mentions Jesus; Moslems believe He existed, not as the son of God, but as a good man and a prophet. I knew this wasn’t Mohammed. I knew it wasn’t Allah. Jesus was in my room. There was no fear, only peace.

“Why would You come to a Moslem when everyone else has left me to die?” I wondered.
Without words, he spoke to me. “I Am the God of the Christians. I Am the God of Abraham, Isaac and Jacob.”

That’s all He said. He didn’t mention my illness. He didn’t mention my impending death. As suddenly as He appeared, He was gone.

The next morning, the same two doctors arrived to examine me. “The blisters have stopped growing!”

“We don’t know what happened, but the shingles virus has gone into remission!”

The following day, still in pain and covered with blisters, I was discharged from the hospital with a suitcase full of drugs. “Don’t leave home,” the doctor cautioned. “It will be months before the blisters go away, and when they do you’ll be left with white patches of skin and scars. The pain could last for years.”

Stepping outside into the morning sun, I looked like a cross between a leper and the Elephant Man. When people saw me, they crossed to the other side of the street. However, my mind was not on my looks; my thoughts were on Jesus. There was no doubt in my mind that Jesus’ presence in my room had stopped the shingles virus. Whatever else Jesus may be, I realized that in His presence miracles happened.

That fact left me with one consuming question: Is Jesus the Son of God as the Christians claim, or is He just a prophet as I was taught?

At home that evening, in spite of the drugs, the pain and itching was so severe I almost had to tie my hands. Even so, I fell into a restless sleep wondering about Jesus.

Learning to Live

The next morning, I woke early and turned on the television. Flipping through the channels, I froze when I saw the following words across the screen: Is Jesus the Son of God?

I listened intently as two men spent the entire program discussing this topic — answering all of my questions. Before the show went off the air, one of the men led the television audience in a prayer. My body was aflame with pain but I knelt on my living room floor anyway. Tears streaming down my face, I repeated the prayer and invited Jesus into my heart.

Immediately a voracious spiritual hunger sprang up within me. I had to know more about Jesus. In spite of my doctor’s orders to stay inside, the next day I went out and bought a Bible. First I read the books of Matthew, Mark, Luke and John. Still ravenous, I started in Genesis and read through the Bible during my sleepless nights.

Meanwhile, Anita brought me books and teaching tapes explaining the Gospel. I devoured them while continuing to study the Word of God. As my understanding of faith began to grow, I dug out a picture of how I looked before shingles. I prayed and asked God to make me look that way again.

Nasir and Anita SiddikiJesus, My Healer

One week after my discharge from the hospital, I woke and found my pillow covered in blisters. I must have clawed them in my sleep, I thought. I crawled out of bed and stepped into the shower. What had started on my pillow was finished in the shower: Every blister fell off my body!

Instead of being covered with patches of white and scar tissue, my skin was simply red and raw. It slowly healed, returning to its pre-shingles condition. When it did, I not only looked human, I looked like I did before I got sick, except for the scars that I still carry on my chest.

None of the doctor’s dire predictions came true. My eyesight was 20/20. My hearing was normal. My speech was unimpaired. I suffered no brain damage.

My healing was miraculous, swift and complete. I never suffered from lingering pain or any other complication. Not only did I have the worst case of shingles ever admitted to Toronto General Hospital , I also had the most miraculous recovery.

Jesus, the God of the Christians, showed up in the hospital room of a dying Moslem and healed me. But that wasn’t the greatest miracle He performed. The transformation that occurred in my heart was even more dramatic than the one that occurred in my body.

An international teacher and evangelist, Dr. Nasir Siddiki is the founder of Wisdom Ministries (WisdomMinistries.org). He lives in Tulsa , OK with his wife Anita and their two sons.

Friday, October 21, 2011

Using Oracle 11g thru VirtualBox appliance in Mac OS X Lion

I just found that its quite a lot of handy work to make Oracle work in Mac OS X Lion.

Currently, I have this quite cool machine with good memory anyway, so I decided to step the easy way, than the "too-much-time-to-work way".


So, I just decided to use VirtualBox with Oracle's pre-built virtual appliance with Oracle 11g Enterprise Edition.


To use this, I use the steps below.



3. I added some specific ports, since I access it thru  NAT so whenever I am, it's easier for me just to hook up my virtual appliance and turn it on.

So you can issue these command in your terminal,

$> VBoxManage modifyvm "OTN Developer Days" --natpf1 "ssh,tcp,,2222,,22"
$> VBoxManage modifyvm "OTN Developer Days" --natpf1 "oracle,tcp,,8282,,8282"
$> VBoxManage modifyvm "OTN Developer Days" --natpf1 "oracle 2,tcp,,1521,,1521"
$> VBoxManage modifyvm "OTN Developer Days" --natpf1 "oracle em,tcp,,1158,,1158"

FYI: I use VirtualBox 4.1.4



The result screenshot above are the ports I have forwarded from my Guest VM Appliacne to my Host machine.


Hope this helps.

Thursday, October 6, 2011

Steve Jobs very promising and inspirational legacy he left for us!

I just found this article posted by Horace Dediu

For my own reference, I copied it because this is truly inspirational that I can get back and read this how many times, still very inspiring.


Steve Jobs didn’t




  • Steve Jobs did not create products. He created an organization that predictably and reliably created emotionally resonant products.
  • Steve Jobs did not make movies. He made a company that predictably and reliably made blockbusters.
  • Steve Jobs did not wrest market share from competitors. He created new markets that attracted and sustained competitors.
  • Steve Jobs did not design anything. He gave others the freedom to think about what jobs products are hired to do.
  • Steve Jobs did not re-engineer processes. He brought engineering processes to works of creativity and the creative process to engineering.
  • Steve Jobs did not develop new management theories. He showed by example that innovation can be managed.
  • Steve Jobs was not a visionary. He put the dots together and saw where they led.
  • Steve Jobs was not a futurist. He just built the future one piece at a time.
  • Steve Jobs did not distort reality. He spoke what he believed would become reality at a time when those beliefs seemed far fetched.
  • Steve Jobs was not charismatic. He spoke from the heart compelling others to follow him.
  • Steve Jobs was not a gifted orator. He spoke plainly.
  • Steve Jobs was not a magician. He practiced, a lot.
He had taste.
He was curious.
He was patient.
He was foolish.
He was hungry.
These things many others can do. Maybe you can.

I would like to add on this article that, still, Steve Jobs is the same human as we are. Same as how we react, how we think, and how we process things, but with difference that he has the perfect package with great behavior, great thoughts, and great attitude leading him to very inspirational genius of all time that I have witnessed since my birth. I'm glad that I've heard him, even not met him in person, but at the least, witnessed his great achievements and inspire us on how we could make be the person we wanted to be, as how Steve Jobs did.

He's such truly inspirational, a genius, a gift for everyone in earth, made the technology in a different phase and experience in a very sophisticated user experience that we can ever think of, but him, Steve Jobs.

Even I haven't met him, he don't know me, and I don't do like appreciating and expressing my great thanks to someone that is not part of my family circle. But Steve Jobs, he gave me light, gave me passion, and great diversity to extend efforts in the area that I love and take those great inspiration thoughts that a person from technology, that I have witnessed in my generation.

Such a great happiness to me in a way that I was born, I knew someone, in the era I am zoetic and cognizant, a true Genius I witness and believe being alive whereas I wasn't born where Albert Einstein, Thomas Edison, Leonardo da Vinci, and many great legendary geniuses we knew.

May you rest in peace, and I'm always be continuing to be inspired by your great wit and your help for us, specially in the area of technology leveraging our lives into a different pace of development and ideas for new generation. I love you Steve Jobs! Thank you so much!!! You are generally a person that anyone would like to miss as you are in the line of amongst legendary Genius that the Earth and Universe acclaimed.


Edited: I want to add more quotes from him as I love his inspirational quotes.


Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. Don’t let the noise of other’s opinions drown out your own inner voice.
And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.”

Thursday, September 8, 2011

objective-c: Do I have to release parameter objects or variable?

I was confused on this until I just realized that if the case is,


-(NSString*)name:(NSString*) _name {
    // I thought I need to do like [_name release];
    return _name;
}


So instead, the _name paramater object anyway is being reference, so ideally, the releasing of the object from memory is outside, i.e. from the callers perspective.

Like,

NSString *stupid = @"Johnny Bravo";
[name setName:stupid];
[stupid release];

or I can do autorelease anyway.

Sunday, August 28, 2011

This blog will be getting seriously and interesting on my following posts!!!

Hi All,

I have just resigned from my previous work. The reason of my resignation is a decision that I am fully confident to pave my way into the real world of programming and technology.

I am now hailing this time to be getting serious and create technologies that I am interested into. I blogged this out so that I could not forget the day I promised to do hard work and always push myself to achieve my goal and make people happy with my work.

I hope I will be getting into my finish line, if God will provide, as I do trust him and I hope he'll always be with me and with my love ones. God bless us all!!!


Regards,
ToytoyGogie

Tuesday, July 19, 2011

LVM: How to remove a volume using pvremove

First, I encountered this error "Can't pvremove physical volume "/dev/sdc1" of volume group "nova-volumes" without -ff" (I'm actually using OpenStack but it's another story).

So to remove this, do first,

~# pvscan
  PV /dev/sdb1   VG nova-volumes    lvm2 [1.82 TiB / 1.82 TiB free]
  PV /dev/sda5   VG cloudmaster     lvm2 [297.85 GiB / 12.00 MiB free]
  PV /dev/sdc1                      lvm2 [1.82 TiB]
  Total: 3 [3.93 TiB] / in use: 2 [2.11 TiB] / in no VG: 1 [1.82 TiB]

Then, when I do,

~# pvremove /dev/sdc1
 Can't pvremove physical volume "/dev/sdc1" of volume group "nova-volumes" without -ff

So I need to,

~# vgreduce nova-volumes /dev/sdc1
  Removed "/dev/sdc1" from volume group "nova-volumes"


Then do `pvscan` again,

~# pvscan
  PV /dev/sdb1   VG nova-volumes    lvm2 [1.82 TiB / 1.82 TiB free]
  PV /dev/sda5   VG cloudmaster     lvm2 [297.85 GiB / 12.00 MiB free]
  PV /dev/sdc1                      lvm2 [1.82 TiB]
  Total: 3 [3.93 TiB] / in use: 2 [2.11 TiB] / in no VG: 1 [1.82 TiB]

Then now, I can remove this by,

~# pvremove /dev/sdc1
  Labels on physical volume "/dev/sdc1" successfully wiped



Then running `pvscan` again,

root@cloudmaster:~# pvscan
  PV /dev/sdb1   VG nova-volumes   lvm2 [1.82 TiB / 1.82 TiB free]
  PV /dev/sda5   VG cloudmaster    lvm2 [297.85 GiB / 12.00 MiB free]
  Total: 2 [2.11 TiB] / in use: 2 [2.11 TiB] / in no VG: 0 [0   ]


Shows that the /dev/sdc device is now removed. Hope this helps.


Tuesday, June 21, 2011

Resizing Disk Images in Linux

To resize the disk image in Linux, do

# sudo fsck.ext4 -f DISK_IMAGE_FILE
# sudo resize2fs DISK_IMAGE_FILE

This is very helpful specially if you are having an instance in the cloud and wanted to resize an image.

Mounting an EBS in Eucalyptus

First, do

# fdisk -l

to list the device available. You can identify what's the current device the Eucalyptus have avail for the current block storage given.

Now, to mount this, do

# mkfs.ext4 /dev/sda

where my current filing system is ext4 and the availed virtual device is /dev/sda. Then afterwards, you can do

# mount -t ext4 /dev/sda /path/to/mounted/directory


Hope this helps.

Eucalyptus - Save current Instance as backup with the power of "dd" command

The current setup for this is that, I have this current instance in Eucalyptus and was already customized while its being in the cloud. This means like, installing packages and added extra configurations to some packages. While its time wasting if to go back and install those packages, doing a dd (disk dump) tool is very helpful.

Below is the command I issued,

#> dd if=/dev/vda1 of=jenkins.img conv=noerror,sync 


I use the conv=noerror,sync which the sync to sync every input block and also its meta data. I've tried w/o that option and it didn't work. 


After I run this into the cloud, I can ssh and I see the state before dd finished, it was there. It's really great!


Hope this helps!



Delete a file with a leading "dash" or (-) in Linux

To delete a file with a leading dash, for example,

# ls -al
total 36195068
drwxr-xr-x  3 toor toor        4096 2011-06-15 16:46 .
drwxrwxrwx 12 toor toor        4096 2011-06-21 14:11 ..
-rw-r--r--  1 toor toor        6887 2011-06-10 13:01 -C


do

# unlink -- -C

Hope this helps

Wednesday, June 15, 2011

Don't be a hypocrite! - One of my favorite gospel in the Holy Bible

Holy Gospel of Jesus Christ according to Saint Matthew 6:1-6.16-18.
Jesus said to his disciples: «Take care not to perform righteous deeds in order that people may see them; otherwise, you will have no recompense from your heavenly Father.
When you give alms, do not blow a trumpet before you, as the hypocrites do in the synagogues and in the streets to win the praise of others. Amen, I say to you, they have received their reward.
But when you give alms, do not let your left hand know what your right is doing,
so that your almsgiving may be secret. And your Father who sees in secret will repay you.
When you pray, do not be like the hypocrites, who love to stand and pray in the synagogues and on street corners so that others may see them. Amen, I say to you, they have received their reward.
But when you pray, go to your inner room, close the door, and pray to your Father in secret. And your Father who sees in secret will repay you.
When you fast, do not look gloomy like the hypocrites. They neglect their appearance, so that they may appear to others to be fasting. Amen, I say to you, they have received their reward.
But when you fast, anoint your head and wash your face,
so that you may not appear to be fasting, except to your Father who is hidden. And your Father who sees what is hidden will repay you. 



Commentary of the day :

Saint Augustine (354-430), Bishop of Hippo (North Africa) and Doctor of the Church
Sermon 150

Fasting, prayer, almsgiving
The Epicureans, who did not hope for any life beyond the grave and only knew the pleasures of the flesh, held to this expression: «Let us eat and drink for tomorrow we die» (1Cor 15,32)... But Christians, for whom another and happier life is to begin after death, should keep well away of saying such things. In fact, bear in mind this truth: «Tomorrow we die», but continue: «Let us fast and pray for death may come tomorrow.»

However, I require yet something else, a third condition, and I don't want to pass over in silence what we should observe above everything else: let your fasting serve to satisfy the hunger of the poor. If you cannot fast then set yourself all the more to feeding the one whose satisfied hunger will win you pardon. So this is what Christians should be saying: «Let us fast and pray, let us give to the poor, for tomorrow we die.»



Tuesday, June 14, 2011

Eucalyptus - cannot find nodes

Previously, we just have bought a cool machines supposedly to be setup as Node Controllers for our cloud master machine (running Walrus Controller, Cloud Controller, Storage Controller, and Cluster Controller).

The current setup we have is,

SERVER1 - Cloud master running i3 with 12GB of memory
SERVER2 and SERVER3 - running i7 3.0 with 16GB of memory

With our setup, our ideal result must have 62 available instances to be run inside the cloud, however, due to the inconsistency we found (check this http://open.eucalyptus.com/wiki/EucalyptusKnownBugs_v1.5.2) with the problem with cloud master against NC's, issuing the command


#> euca-describe-availability-zones verbose


AVAILABILITYZONE kinten-cloud 122.2.1.4
AVAILABILITYZONE |- vm types free / max   cpu   ram  disk
AVAILABILITYZONE |- m1.small 0031 / 0031   1    512    10
AVAILABILITYZONE |- c1.medium 0015 / 0015   1   1024    15
AVAILABILITYZONE |- m1.large 0007 / 0007   2   2048    20
AVAILABILITYZONE |- m1.xlarge 0003 / 0003   4   4096    30
AVAILABILITYZONE |- c1.xlarge 0001 / 0001   8   8192    40

which the result is not correct. It only able to see one NC (node controller). So fixing this, I tried to look on axis2c.log under /var/log/eucalyptus directory, and I see the errors below


[Tue Jun 14 06:04:40 2011] [error] rampart_timestamp_token.c(179) [rampart]Timestamp not valid: Created time is not valid
[Tue Jun 14 06:04:40 2011] [error] error.c(94) OXS ERROR [euca_axis.c:364 in verify_node] element failed , Validation failed for Timestamp with ID = #SigID-232793f0-9609-1e01-3638
[Tue Jun 14 06:04:40 2011] [error] euca_axis.c(322) [rampart][eucalyptus-verify] "Failed to verify location of signed elements!"
[Tue Jun 14 06:04:40 2011] [error] rampart_engine.c(159) [rampart][rampart_engine] Cannot get saved rampart_context
[Tue Jun 14 06:04:40 2011] [error] rampart_out_handler.c(136) [rampart][rampart_out_handler] ramaprt_context creation failed.
[Tue Jun 14 06:04:40 2011] [error] phase.c(233) Handler RampartOutHandler invoke failed within phase MessageOut
[Tue Jun 14 06:04:40 2011] [error] engine.c(696) Invoking phase MessageOut failed


This has to be the problem of ntp which the cloud master and the NC weren't sync at all. To fix this, I issued

#> ntpdate 192.168.1.1

where 192.168.1.1 is the IP of the cloud master inside the private network (server1, server2 and server3).  IP 122.2.1.4 is within the LAN.

Before running ntpdate, make sure that your ntp daemon is not running, else you can do 

#> /etc/init.d/ntp restart

be sure you have properly edited /etc/ntp.conf and have your server added there. Mine its

server 192.168.1.1

After all, I have working nodes found.

#> euca-describe-availability-zones verbose
AVAILABILITYZONE kinten-cloud 122.2.1.4
AVAILABILITYZONE |- vm types free / max   cpu   ram  disk
AVAILABILITYZONE |- m1.small 0062 / 0062   1    512    10
AVAILABILITYZONE |- c1.medium 0030 / 0030   1   1024    15
AVAILABILITYZONE |- m1.large 0014 / 0014   2   2048    20
AVAILABILITYZONE |- m1.xlarge 0006 / 0006   4   4096    30
AVAILABILITYZONE |- c1.xlarge 0002 / 0002   8   8192    40



Hope this will fix in your end.


Eucalyptus - authorizing a port

To authorize a port in Eucalyptus from the running instance, issue this command

euca-authorize -P tcp -p 22 -s 0.0.0.0/0 default

Monday, June 13, 2011

IP Masquerading - To share internet connection within a private network

So I have this setup,

SERVER1 - This connects to the LAN/Internet connection

SERVER2 and SERVER3 is connected to SERVER1, where SERVER1 is acting their gateway.

So SERVER1 is using CLASS A IP Address, using 10.0.2.45

while SERVER2 and SERVER3 is using CLASS C, having SERVER2 as 192.168.10.2 and SERVER3 as 192.168.10.3 and SERVER1 as their gateway using 192.168.10.1 IP.

Server3 has 2 interfaces, one connects to the LAN and one connects to the private network of SERVER2 and SERVER3.

So to achieve SERVER2 and SERVER3 must have internet connection,
first in SERVER1, login as root and then check if the ip forwarding is enabled by,

$> cat /proc/sys/net/ipv4/ip_forward


if the result is 1, leave it behind, else,

$> echo "1" > /proc/sys/net/ipv4/ip_forward

then, do

$> iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

I'm not going to explain fully what does the command do, you can check this by doing "man iptables".
So the "-o eth2", this is the interface that is dedicated to the LAN/internet connection. Since SERVER1 has two interfaces (namely eth0, and eth2), the eth0 is connected to SERVER2 and SERVER3 machines. So here, you should use the interface that has the internet connection to share.

Now in SERVER2 and SERVER3,
edit first /etc/resolv.conf and add the DNS that SERVER1 is using. Currently, I have SERVER1 dns to 10.0.2.1 so edit and add the line below,

nameserver 10.0.2.1

then save /etc/resolv.conf.

Now, ping google.com, hopefully this works in your end.


You can also add 8.8.8.8 which is a free DNS used by Google.

Hope this helps.

Wednesday, April 27, 2011

Singleton implementation in iOS on Objective-C

Just read this very helpful article on implementing a singleton in iOS. Below is a simple snippet that is thread safe, and is indeed, faster than @synchorize when is executed.


+(MyClass *)singleton {
 static dispatch_once_t pred;
 static MyClass *shared = nil;
 
 dispatch_once(&pred, ^{
  shared = [[MyClass alloc] init];
 });
 return shared;
}


dispatch_once() function is indeed mentioned in Mac Developer Library that is useful in implementing singletons or global data.

Hope you found this helpful.

Wednesday, February 16, 2011

Reason why sizeof charstr adds another 1 byte in C Programming

Returning back to C programming again, now I was stumbling why does
char o[] = "1"

and


sizeof o 

returns 2, while
char o = '1'; 

returns 1. Or If I do
char o[] = "2345"; 

and

sizeof o


is 5. It seems that when char is an array/string, it adds 1.

Then I just found the answer that when it becomes a string, it includes the '\0' or null character or 0 byte mark which indicates the end of the string. Some call it as zero termination. So in the example, char o[] = "1", it goes like {'1', '\0'}.

Thursday, January 20, 2011

CVS - How to check the newly modified files against the repository

To check the modified files against the centralized repository, you can do

cvs -nq update

to specify the date, you can do

cvs -nq update -D "20110120 20:00"


The date format can be passed is "YYYYMMDD HH:MM"or by its relevant format of date.

Hope this helps.

Thursday, January 6, 2011

CVS: View History via terminal or CLI

I'm not really an expert with CVS, and unlike other VCS, running it's history would be easier, so I document this stuff which I'm forgetful when doing a history on CVS.

Issuing,

$> cvs history

and encountered the error below,


cvs history: Unknown method (`extssh') in CVSROOT.
cvs history: in directory .:
cvs history: ignoring CVS/Root because it does not contain a valid root.
cvs history: No CVSROOT specified!  Please use the `-d' option
cvs [history aborted]: or set the CVSROOT environment variable.


So what I did, I use the -d option and achieve the below result,


cvs -d :ext:username@hostname:/path/cvs/project history -e

so the -e will do everything involve in its CVS history reports with all record types.

Hope this helps.