Friday, September 23, 2011

How to fix 'for' loop initial declarations are only allowed in C99 mode in Eclipse

For loop problem
Once again, programming in C using Eclipse in Linux is great, however when using "for" loops I get this error:
'for' loop initial declarations are only allowed in C99 mode
After a little bit of research, in Eclipse, go to Project > Properties > C/C++ Build > Settings > GCC C Compiler > Miscellaneous > add "-std=c99" to the "Linker Flags" text field.

How to fix undefined reference to `sqrt' in Eclipse

Math.h problem
Programming in C using Eclipse in Linux is great, however when i added variables that were doubles into the "sqrt" function from the "math.h" library there was a problem that came up.
undefined reference to `sqrt'
After a little bit of research, in Eclipse, go to Project > Properties > C/C++ Build > Settings > GCC C Linker > Miscellaneous > add "-lm" to the "Linker Flags" text field. That way it is properly linked to the project.

Thursday, September 8, 2011

How to change your MAC Address

Media Access Control address(MAC)

Linux in General (3 Possible Ways):
sudo ifconfig wlan0 down
- turn device off
sudo ifconfig wlan0 hw ether XX:XX:XX:XX:XX:XX
- set the mac you want
sudo ifconfig wlan0 up
- turn device on
sudo ip addr
- show config
sudo ip link set dev wlan0 address XX:XX:XX:XX:XX:XX
- set the mac you want
sudo pico /etc/network/interfaces
- edit your network devices
- add hwaddress ether XX:XX:XX:XX:XX:XX to your device

After you change your MAC address, run sudo /etc/init.d/networking stop then sudo /etc/init.d/networking start

GNU Mac Changer:
Install: Install: sudo apt-get install macchanger

macchanger -s wlan0
- shows the current mac on the device

macchanger -mac wlan0 XX:XX:XX:XX:XX:XX
- set the mac you want

You might want to add a script in the /etc/rc.local to automatically change your MAC Address everytime on boot.

Monday, September 5, 2011

How to change your Hostname in Android

DHCP Hostname
With GingerBread, some devices show up in a router's DHCP list as 'android-sdr4r55ed'
Old Ways:
You can change host name in Gingerbread:
 > go to Settings -> Applications -> Development -> Device hostname or
Settings -> Wireless & networks -> Bluetooth settings -> Device name

Using adb shell, then
 > hostname NAME or edit /proc/sys/kernel/hostname
    echo NAME > /proc/sys/kernel/hostname

Using adb shell with busybox installed
 > busybox hostname NAME 

Best Way:
This worked for my Droid X, .602+ Rooted was using adb shell, then:
getprop net.hostname
setprop net.hostname NAME

Since the above code gets reset after each reboot, here is what else
I have found:


editing net.hostname
># getprop net.hostname
># setprop net.hostname NAME

after the reboot it reverts to android_

so, hook your phone up to your computer:

your computer > adb > phone

> adb shell

> su
 - always backup all files first
> cp /data/data/ 

> cp /data/data/ 

> rm /data/data/

now click disk storage on the usb to access the mnt on your own computer

your computer > access your sdcard

> file settings.db

Ex. settings.db: SQLite 3.x database, user version 57

> sqlite3 settings.db

to show databases:

sqlite> .databases
seq  name             file                                                      
---  ---------------  ------------------------------
0    main             /media/249A-11E0/z/settings.db

to show tables:

sqlite> .tables
android_metadata   bookmarks          system           
bluetooth_devices  secure 

to show the column names:

sqlite> .schema secure
CREATE INDEX secureIndex1 ON secure (name);

The column names go from left to right: _id, name, value.

now select the table, secure, this command with show everything:

sqlite> select * from secure;

Here I picked id = 24, this is where my id was.

sqlite> select * from secure where _id = "24";
 - just another way
sqlite> select * from secure where name = "android_id";
 - just another way
sqlite> select * from secure where value = "";

We can easily change the "ID" value from the <16 digit id> 
to any number. Here I changed it to 0:

sqlite> update secure set value = 0 where _id = 24;

Type .exit in order to exit.

sqlite> .exit

On the USB notification change from storage to charge to mount your 
sdcard to your phone.
phone > sdcard

> adb shell

> su

> cp /mnt/sdcard/settings.db 

Now simply reboot your phone. You should now see "android_0" as your 
new hostname. I know I didnt change the entire hostname, however I will 
continue to look into this.

Thursday, September 1, 2011

Android - FREE Samples

Free Code and Projects
I used Google to find these, very helpful for learning new layouts and different android features.


Blogspot(Google Blogs)

Google Code



Monday, August 29, 2011

How to hack Scribd to download documents for free

How to download documents for free
I was looking at an online document that SOMEONE ELSE UPLOADED and it was very helpful, so I wanted to download it. Scribd however, wanted to charge a daily fee of around $5 dollars to download the content, when it clearly says someone uploaded it.

Here was the document that I wanted: 
For Public ID's(2012):
*document ID* = 90924585*document ID*/
or*document ID*/download
Insert the number id in the here ^
Sometimes using the first download link is better because it creates a download button. It should should show a download link.  

Update(2/18/12): For Private ID's:

Example URLs:

Right-click > View Page Source > Save as to a document on your computer *Make sure you do this to get the entire "Generated Source" (I used Mozilla FireFox)

 I saved this as "doc.html" Open the file "doc.html" > Search for "page.u" You should see something like "// page.uuid : 3kw800775slntll" 
page.uuid = "3kw800775slntll"
Now search for the page.uuid or "3kw800775slntll" and you should see something like: ""

The URL can range from "" to "".

Here is a simple Linux Bash Script to download the images:
Make SURE you change the *page.uuid* to your page.uuid.
cat "doc.html" | grep pages | cut -d"/" -f6 | cut -d. -f1 | grep -vi scrib | while read ID; do wget "*page.uuid*/images/$ID.jpg"; done;
However, once you find the page.uuid, you can substitute it in the URL. "*page.uuid*/images/$ID.jpg"

Update(2/25/12): For Protect(Preview) ID's:

When there are previews on Scribd, they are trying to selling a document and other allow users to few select pages.  Downloading these would be illegal and the script above only downloads the images of the "protected" documents.

Tuesday, August 2, 2011

crypTo. - Android Application

crypTo. - Android Application

Mobile Encryption on the Go! Hash fast with crypTo.

Encryption on the Go! Hash fast with crypTo!

>>>>>>>>>Please Donate! - Be sure to Rate/Comment/Suggest!
*crypTo currently has 17 hashing algorithms!*

crypTo is an hashing/encryption application with the follow features:

Encoding (Hashing/Encryption and Decryption):
– Encrypts strings in Base64, Binary, CRC32, GOST, MD2, MD4, MD5, RipeMD128, RipeMD160, RipeMD256, RipeMD320, SHA-1, SHA-256, SHA-384, SHA-512, Tiger and Whirlpool!
– Decrypts Base64, Binary and looks up MD5 back to its original string!
– Hashing messages or numbers can be used in order to hide or send secret messages that could be decrypted later on!
– Hashing you own passwords and then pasting into Google in order to see if they have been cracked is a good way of checking the security of your passwords.

File Checksums (File Verification)
– Using CRC32, GOST, MD2, MD4, MD5, RipeMD128, RipeMD160, RipeMD256, RipeMD320, SHA-1, SHA-256, SHA-384, SHA-512, Tiger and Whirlpool!
– Every file has a checksum and when downloading files it is very important that these checksums are matched to the checksum given by the source providing the downloaded file because the files could contain malware or may not work properly because it was not completely downloaded.

Compare Strings and Files
– Copy and Compare Strings and check is they match!
– After Hashing a String or File, you may check and compare Checksums to make sure they are correct!
– Compare File to File through MD5 File Checkum!

What is a string?
– A string can be letters or numbers before they are encrypted into a hash.

What is a hash?
– A hash is an encrypted string of letters or numbers by different encryption methods. Hashes are used in cryptography for creating strong passwords, data encryption and to check the integrity of files.

What is a checksum?
– A checksum is a hash of a file.

Test on the following phone(s):
– Droid X
– HTC Inspire

Explanation of permissions requested:
– Internet: MD5 Reverse Lookup

Suggestions/Possible Future Updates:
– Widgets
– Saving Hashes
– File Encryption
– More Encryption Methods such as Adler-32 and Haval-128

Tags: hash encryption decryption Base64 Binary CRC32 GOST MD2 MD4 MD5 RipeMD128 RipeMD160 RipeMD256 RipeMD320 SHA-1 SHA-256 SHA-384 SHA-512 Tiger Whirlpool password security hash hack hacking encryption decryption

Friday, July 22, 2011

Ubuntu - Trash Can

Open Terminal and follow the commands:

go to apps > nautilus > desktop
check trash_icon_name

It should appear on your desktop :)