<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4207614733423642714</id><updated>2024-10-05T09:00:51.349+07:00</updated><category term="m2m"/><category term="automation"/><category term="linux"/><category term="3g"/><category term="gprs"/><category term="gps"/><category term="grub"/><category term="java"/><category term="networking"/><category term="nms"/><category term="perl"/><category term="ppp"/><category term="python"/><category term="serial"/><category term="sms"/><category term="snmp"/><title type='text'>Joko Sastriawan</title><subtitle type='html'>Knowledge (err... core dump), things found somewhere</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-4041182931198581565</id><published>2020-01-29T01:28:00.001+07:00</published><updated>2020-01-29T04:00:22.417+07:00</updated><title type='text'>Linux serial console over AMT SOL - in practical way</title><summary type="text">One of hidden gem and underrated in AMT is Serial-Over-LAN (SOL). For most Unix veterans, embedded developers and Telco equipment/IT admins, managing devices using serial port is common rite. We occasionally connect serial port over modem for remote access. Sometimes we hook it to Serial over IP box so that it is reachable within enterprise.

AMT Serial-Over-LAN brings this communication port to </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/4041182931198581565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/4041182931198581565' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4041182931198581565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4041182931198581565'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2020/01/linux-serial-console-over-amt-sol-in.html' title='Linux serial console over AMT SOL - in practical way'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgO1EhpZLLJTL6pmgaxum2WviFJJOGmNxkqaOBWauQRvnDFiZNQhyIap1Q7qgN_BnwjPPHAh64mk4OhzVcCGexInQ-jGS08ZoJWJMWkbJ3T4LUBpFaL7-y8xWW7zZ0XJAeC5GZ7BFnyz0I/s72-c/check_tty.JPG" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-5005347276434531471</id><published>2020-01-21T04:41:00.000+07:00</published><updated>2020-01-21T04:41:01.863+07:00</updated><title type='text'>mc2router - a simple yet versatile tool to get stuff done over Meshcentral 2</title><summary type="text">Meshcentral 2 (or we passionately call it MC2) has been remote management choice for many of my team members for more than 3 years. Being able to remotely see the screen, access the shell and transfer files to our devices regardless the location of the devices have been very valuable to get stuff done.

While contributing to this project, I realized that there is a very nifty feature of MC2 which</summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/5005347276434531471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/5005347276434531471' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/5005347276434531471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/5005347276434531471'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2020/01/mc2router-simple-yet-versatile-tool-to.html' title='mc2router - a simple yet versatile tool to get stuff done over Meshcentral 2'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqhyphenhyphenFWqUBZ1qPLu5rUvUIbZmIIzb5oWxKeTEWM_0vu212Jy1ENotL8Xwn0aBdEJRj4qmADDwlsrPJVqwfCPk_6W4sLo7GyCitpI-nhct9HTXe-GYWNsd19GSO97AHe7KwLdrnxt8M6_go/s72-c/login.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-8154476871803515915</id><published>2013-09-09T11:50:00.000+07:00</published><updated>2013-09-09T11:55:06.267+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="gps"/><category scheme="http://www.blogger.com/atom/ns#" term="m2m"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><title type='text'>NMEA string parser in Python - if you want to develop GPS tracker software in Python</title><summary type="text">GPS devices usually spit out location information in NMEA format. This format is quite standard. Here is the example of NMEA strings:

$GPGGA,002153.000,3342.6618,N,11751.3858,W,1,10,1.2,27.0,M,-34.2,M,,0000*5E
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598, ,*10

Those two lines contains geo-location coordinates, bearing, speed and also some information about the number of </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/8154476871803515915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/8154476871803515915' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/8154476871803515915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/8154476871803515915'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2013/09/nmea-string-parser-in-python-if-you.html' title='NMEA string parser in Python - if you want to develop GPS tracker software in Python'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-8194190823374983331</id><published>2012-12-10T15:59:00.002+07:00</published><updated>2012-12-10T16:00:30.756+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="grub"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><title type='text'>Moving Linux installation to bigger disk/SSD</title><summary type="text">I recently had an experience helping customer moving its Linux installation from 4GB CF to 16GB SSD. Normally, we can transfer existing installation from one medium to another easily if the size is the same. Unfortunately this is not the case. So, here are the high level steps to achieve do this.

1. Attach the new disk on spare SATA port.
2. Re-create new partition structure in the new disk. </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/8194190823374983331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/8194190823374983331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/8194190823374983331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/8194190823374983331'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2012/12/moving-linux-installation-to-bigger.html' title='Moving Linux installation to bigger disk/SSD'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-236502158579257533</id><published>2011-10-20T13:18:00.000+07:00</published><updated>2011-10-20T13:21:28.775+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="automation"/><category scheme="http://www.blogger.com/atom/ns#" term="m2m"/><category scheme="http://www.blogger.com/atom/ns#" term="perl"/><category scheme="http://www.blogger.com/atom/ns#" term="serial"/><category scheme="http://www.blogger.com/atom/ns#" term="sms"/><title type='text'>Sending SMS via GPRS modem using Perl Device::SerialPort</title><summary type="text">Sometimes ago, I posted a script to send SMS using Gammu. Now, I would like to deep dive on the underlying communication to GPRS modem using AT command to send SMS.

The sequence of AT commands to use are:

ATZ    : Reset modem&amp;nbsp;
ATE0  : Disable echo (not necessary)
AT+CMGF : Setting the SMS mode (Text or PDU)&amp;nbsp;
AT+CSCA : Query or set the SMS center number&amp;nbsp;
AT+CMGS: Send SMS&amp;nbsp;

</summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/236502158579257533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/236502158579257533' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/236502158579257533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/236502158579257533'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2011/10/sending-sms-via-gprs-modem-using-perl.html' title='Sending SMS via GPRS modem using Perl Device::SerialPort'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-72064326776305871</id><published>2011-10-13T10:58:00.000+07:00</published><updated>2011-10-13T11:03:49.472+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3g"/><category scheme="http://www.blogger.com/atom/ns#" term="automation"/><category scheme="http://www.blogger.com/atom/ns#" term="gprs"/><category scheme="http://www.blogger.com/atom/ns#" term="linux"/><category scheme="http://www.blogger.com/atom/ns#" term="m2m"/><category scheme="http://www.blogger.com/atom/ns#" term="networking"/><category scheme="http://www.blogger.com/atom/ns#" term="ppp"/><title type='text'>3G/GPRS connection using pppd and chat for M2M communication</title><summary type="text">In most cases, connecting to the Internet using 3G modem on normal desktop Linux is fairly easy because the networking support framework is quite mature.

However, for small embedded system, having a full blown networking support framework is a luxury. And usually the desktop networking framework is developed for interactive human intervention whereas for some embedded cases the 3G network </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/72064326776305871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/72064326776305871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/72064326776305871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/72064326776305871'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2011/10/3ggprs-connection-using-pppd-and-chat.html' title='3G/GPRS connection using pppd and chat for M2M communication'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-1336833456698687234</id><published>2011-04-19T18:02:00.000+07:00</published><updated>2011-04-19T18:02:14.209+07:00</updated><title type='text'>Linux kernel modules configuration on Yocto Project Bernard</title><summary type="text">For the last two weeks, I have been working on developing custom Linux OS image using Yocto Project system. One of the requirement is that the device should support V4L(1|2) and various USB webcam. However the default kernel configuration does not contain the required options. 

I have been trying to:
- add defconfig file into recipes but it is always been ignored by Bitbake
- add partial kernel </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/1336833456698687234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/1336833456698687234' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1336833456698687234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1336833456698687234'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2011/04/linux-kernel-modules-configuration-on.html' title='Linux kernel modules configuration on Yocto Project Bernard'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-3120500906795349502</id><published>2010-12-28T17:04:00.000+07:00</published><updated>2010-12-28T17:04:10.470+07:00</updated><title type='text'>End of the year 2010 reflection</title><summary type="text">A lot had happened this year, &amp;nbsp;and so many important decisions were made. Leaving previous companies and accepting a new position at Intel Indonesia were the key decisions.&amp;nbsp;Engineering tasks have always been my passion. Hands-on design and coding, tackling clients&#39; problem, out of the box thinking on problem solving had always been my day to day tasks.

For the last 8 months, I have </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/3120500906795349502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/3120500906795349502' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3120500906795349502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3120500906795349502'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2010/12/end-of-year-2010-reflection.html' title='End of the year 2010 reflection'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-4089489294710696961</id><published>2010-02-15T14:18:00.001+07:00</published><updated>2010-02-15T14:19:43.367+07:00</updated><title type='text'>Using Zimbra LDAP as Spring-security backend and handling Linux/BSD MD5 encrypted password</title><summary type="text">LDAP has been one of the most common way of managing user credentials for most company. Email and other services may use LDAP to authenticate users. I have been using with Spring Security for quite sometime however recently I have a very challenging task of integrating Zimbra LDAP as Spring Security backend.

Zimbra LDAP does not allow user to connect and authenticate directly (no binding </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/4089489294710696961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/4089489294710696961' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4089489294710696961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4089489294710696961'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2010/02/using-zimbra-ldap-as-spring-security.html' title='Using Zimbra LDAP as Spring-security backend and handling Linux/BSD MD5 encrypted password'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-3384505195935619846</id><published>2010-01-25T15:51:00.001+07:00</published><updated>2010-01-25T15:53:04.252+07:00</updated><title type='text'>Using javax.xml.soap to access OTRS SOAP service without WSDL</title><summary type="text">For most of us who are frequently using WSDL to generate stub classes for accessing webservices, dealing with SOAP services without WSDL is painful. OTRS (Open source Ticket Request System) is one of them. One attempt by OpenNMS team has been quite successful on integrating OTRS by writing its own webservice as an OTRS plugin. However, this is not satisfactory in my opinion. We need a better way </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/3384505195935619846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/3384505195935619846' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3384505195935619846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3384505195935619846'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2010/01/using-javaxxmlsoap-to-access-otrs-soap.html' title='Using javax.xml.soap to access OTRS SOAP service without WSDL'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-1685667978644800580</id><published>2010-01-15T15:40:00.000+07:00</published><updated>2010-01-15T15:40:19.842+07:00</updated><title type='text'>Accessing WS-Security protected (UsernameToken) WebService using PHP5 Soap</title><summary type="text">After battling for several hour trying to figure out on how to send WS-Security header using PHP5 Soap API, I finally managed to discover the work of the good people at University of Toronto . Using their example and the PHP code they posted on the website: soap-wsse.php and xmlseclibs.php, I have been able to test my CXF-powered webservice.

I have a web service running at http://localhost:9090/</summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/1685667978644800580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/1685667978644800580' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1685667978644800580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1685667978644800580'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2010/01/accessing-ws-security-protected.html' title='Accessing WS-Security protected (UsernameToken) WebService using PHP5 Soap'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-6011746745549295554</id><published>2010-01-11T14:41:00.000+07:00</published><updated>2010-01-11T14:41:13.552+07:00</updated><title type='text'>Mono WebClient Basic Authorization pre-authenticate problems</title><summary type="text">For the last few week I have been trying to set Mono WebClient to send (.. yeah.. simple... just send the fricking..) Basic Authorization header. Apparently, somebody is just too smart to decide not sending the header on the first request for security reason (sending user credential).

Well, the problem is that Acegi/Spring security does not necessarily send 401 header since authentication can be</summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/6011746745549295554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/6011746745549295554' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6011746745549295554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6011746745549295554'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2010/01/mono-webclient-basic-authorization-pre.html' title='Mono WebClient Basic Authorization pre-authenticate problems'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-503254305250116523</id><published>2009-11-03T20:51:00.004+07:00</published><updated>2009-11-05T13:40:44.666+07:00</updated><title type='text'>Simplified SnmpUtility class based upon SNMP4J</title><summary type="text">Due to popular request, I am posting my wrapper code or SnmpUtility based upon SNMP4J. I copy some part of this code somewhere that I could remember. So, I do apologise if I could not give the original author a proper credit.

Updated: &amp;lt; and &amp;gt; were unable to display properly so the generic is not seen properly. I wish it is fixed now.


Here is how to use it:

SnmpUtility util = new </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/503254305250116523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/503254305250116523' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/503254305250116523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/503254305250116523'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/11/simplified-snmputility-class-based-upon.html' title='Simplified SnmpUtility class based upon SNMP4J'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-6300730065513971573</id><published>2009-10-28T09:20:00.004+07:00</published><updated>2011-01-12T08:32:48.314+07:00</updated><title type='text'>Workaround on installing Android SDK 2.0 behind proxy requiring authentication</title><summary type="text">This morning I tried to install Android SDK 2.0 on my Ubuntu desktop. I downloaded the package with my browser without any problem. Extract it and then run tools/android to download the packages.  Realising that my desktop requires a proxy which requires authentication to get to the Net, I went to the Settings panel of the Android SDK and AVD. There are only proxy host and port entries, no </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/6300730065513971573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/6300730065513971573' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6300730065513971573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6300730065513971573'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/10/workaround-on-installing-android-sdk-20.html' title='Workaround on installing Android SDK 2.0 behind proxy requiring authentication'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-5402386563336750720</id><published>2009-09-23T15:56:00.003+07:00</published><updated>2009-09-23T16:20:17.356+07:00</updated><title type='text'>Mass sending SMS using gnokii</title><summary type="text">During certain period within a year, we might have to send text messages (festivity greeting) to several friends for example during religious holiday season. Well, writing one template and re-sending text messages through your mobile phone might be OK for 5 or 10 numbers. How about if you have to reply 25 to 50 text messages? Sore thumb :)

Gnokii is very good at sending SMS via a GSM/3G/HSDPA </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/5402386563336750720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/5402386563336750720' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/5402386563336750720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/5402386563336750720'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/09/mass-sending-sms-using-gnokii.html' title='Mass sending SMS using gnokii'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-3370418378218824796</id><published>2009-07-09T10:54:00.003+07:00</published><updated>2009-07-09T11:02:50.697+07:00</updated><title type='text'>Opennms build failed due to xerces problem (affecting 1.6.x)</title><summary type="text">For some of you who may have tried building opennms from scratch, you may find a problem where build failed due to xerces dependencies could not be found. Based on several post that I have read, it is due to the relocation of the files. Well, the simples work around to that is to install xerces-1.4.0.jar into your local maven repository. This is the syntax command to do that:



mvn </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/3370418378218824796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/3370418378218824796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3370418378218824796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/3370418378218824796'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/07/opennms-build-failed-due-to-xerces.html' title='Opennms build failed due to xerces problem (affecting 1.6.x)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-9178481587490401898</id><published>2009-06-25T15:54:00.006+07:00</published><updated>2009-06-29T09:10:20.364+07:00</updated><title type='text'>JDBC class loading failed from JAX-WS annotated class</title><summary type="text">Creating a JAX-WS based webservice either using JAX-WS RI or Apache CXF is simplified by using annotation, for example creating interface annotated with @WebService is a simple as the following:


@WebService
public interface AService {
   @WebMethod
   String getThingsFromJDBC(String key);
}


Then the interface is implemented as the following:


@WebService
public class AServiceImpl implements </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/9178481587490401898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/9178481587490401898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/9178481587490401898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/9178481587490401898'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/06/jdbc-class-loading-failed-from-jax-ws.html' title='JDBC class loading failed from JAX-WS annotated class'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-4266565262846889883</id><published>2009-06-17T10:10:00.009+07:00</published><updated>2009-06-25T16:49:03.317+07:00</updated><title type='text'>Running RMIC via ant</title><summary type="text">Netbeans, does not support RMI-based project quite well especially on generating stub files using RMIC. However, we can always tweak the build-impl.xml script to run RMIC. To generate stub files, RMIC must be executed after class compilation finished. Thus, the most appropriate place to run it is in -post-compile target.

Here is a snippet on how to invoke RMIC in -post-compile target. I found </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/4266565262846889883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/4266565262846889883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4266565262846889883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/4266565262846889883'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2009/06/running-rmic-via-ant.html' title='Running RMIC via ant'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-7643656912358877928</id><published>2008-08-11T17:59:00.004+07:00</published><updated>2008-08-11T18:24:53.241+07:00</updated><title type='text'>Intel HDA modem on Hardy Heron</title><summary type="text">My laptop, a two years old Toshiba A100 Core Duo, has a built-in modem. It is based on Intel HDA modem. I have been struggling to use it under Ubuntu during its (the laptop) early day.

So, I never touch it again, instead I have been using my Dopod 383Pro as HSDPA modem -- in emergency situation. 

Today, I have seen several articles pointing at slmodemd and how to use it. In the spirit of </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/7643656912358877928/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/7643656912358877928' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/7643656912358877928'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/7643656912358877928'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2008/08/intel-hda-modem-on-hardy-heron.html' title='Intel HDA modem on Hardy Heron'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-6809073632856604520</id><published>2008-07-29T08:06:00.015+07:00</published><updated>2008-07-29T09:07:33.809+07:00</updated><title type='text'>Simple Netfilter internet connection sharing</title><summary type="text">Imagine this, you are in a meeting with your work mates in a hotel which charges unreasonably high internet access fee. You are connected to the Internet via your HSDPA modem. Your mates need to check his mail and to do some administrative stuff on the groupware. You want to share your internet connection and you are using Linux with Iptables(netfilter) installed (whoo..hooo....). Now, how do you</summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/6809073632856604520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/6809073632856604520' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6809073632856604520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/6809073632856604520'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2008/07/simple-netfilter-internet-connection.html' title='Simple Netfilter internet connection sharing'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4207614733423642714.post-1599790998897386591</id><published>2008-07-28T12:35:00.007+07:00</published><updated>2008-07-28T13:17:45.776+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="nms"/><category scheme="http://www.blogger.com/atom/ns#" term="snmp"/><title type='text'>A Simple SNMP4J usage</title><summary type="text">For some network administrator, querying an SNMP agent is as simple as executing:

snmpwalk -v2c -c public localhost system

Similarly, Java application developer could do that as well using SNMP4J quite easily.

Oh, BTW, don&#39;t complain about the length of the code because I don&#39;t know how to attach the code to this post..:(

Here is the import code snippet


 org.jbs.snmputils.*
 </summary><link rel='replies' type='application/atom+xml' href='http://sastriawan.blogspot.com/feeds/1599790998897386591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/4207614733423642714/1599790998897386591' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1599790998897386591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4207614733423642714/posts/default/1599790998897386591'/><link rel='alternate' type='text/html' href='http://sastriawan.blogspot.com/2008/07/simple-snmp4j-usage.html' title='A Simple SNMP4J usage'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>17</thr:total></entry></feed>