Re: Help Required In Writing a New SDBC Driver For LDAP

Rohit Kulkarni <[email protected]> Sat, 12 Mar 2011 11:47:07 +0530
Newsgroups gmane.comp.openoffice.dba.devel
Message-ID <[email protected]>
--0016e65a08602e864c049e430747
Content-Type: text/plain; charset=ISO-8859-1

As a first step, I copied the folder DriverSkeleton to
"../connectivity/drivers/" .I created .xcu and .xml files.To run dmake I
must have makefile.mk in my driver folder. So, I checked a makefile.mk in
calc folder and made same for DriverSkeleton driver. Also, I copied
exports.dxp and .map files from calc to DriverSkeleton.
Finally, my DriverSkeleton folder contains following files--

[root@localhost drivers]# cd DriverSkeleton/
[root@localhost DriverSkeleton]# ls
DriverSkeleton.map              Makefile
propertyids.hxx                    SDriver.cxx
SResultSet.hxx                    SStatement.hxx
DriverSkeleton.xcu               makefile.mk
SConnection.cxx                  SDriver.hxx
SResultSetMetaData.cxx      DriverSkeleton.xml
OSubComponent.hxx            SConnection.hxx
SPreparedStatement.cxx      SResultSetMetaData.hxx
exports.dxp                          OTypeInfo.hxx
SDatabaseMetaData.cxx       SPreparedStatement.hxx
SServices.cxx                      How_to_write_my_own_driver.txt
propertyids.cxx                     SDatabaseMetaData.hxx
SResultSet.cxx                     SStatement.cxx

After running dmake in the same folder it give me the following output--

../../../unxlngi6.pro/slo/SResultSet.o: In function
`connectivity::skeleton::OResultSet::createArrayHelper() const':
SResultSet.cxx:(.text+0x439): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SResultSet.cxx:(.text+0x49d): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SResultSet.cxx:(.text+0x501): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SResultSet.cxx:(.text+0x55f): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SResultSet.cxx:(.text+0x5c3): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
../../../unxlngi6.pro/slo/SResultSet.o:SResultSet.cxx:(.text+0x627): more
undefined references to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const' follow
../../../unxlngi6.pro/slo/SResultSet.o: In function
`connectivity::skeleton::OResultSet::getMetaData()':
SResultSet.cxx:(.text+0x1f9f): undefined reference to `vtable for
connectivity::skeleton::OResultSetMetaData'
../../../unxlngi6.pro/slo/SResultSet.o: In function
`connectivity::skeleton::OPropertyMap::getPropMap()':
SResultSet.cxx:(.text._ZN12connectivity8skeleton12OPropertyMap10getPropMapEv[connectivity::skeleton::OPropertyMap::getPropMap()]+0x9b):
undefined reference to
`connectivity::skeleton::OPropertyMap::~OPropertyMap()'
../../../unxlngi6.pro/slo/SStatement.o: In function
`connectivity::skeleton::OStatement_Base::createArrayHelper() const':
SStatement.cxx:(.text+0x58d): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SStatement.cxx:(.text+0x5f1): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SStatement.cxx:(.text+0x658): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SStatement.cxx:(.text+0x6bf): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
SStatement.cxx:(.text+0x726): undefined reference to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const'
../../../unxlngi6.pro/slo/SStatement.o:SStatement.cxx:(.text+0x78d): more
undefined references to
`connectivity::skeleton::OPropertyMap::getNameByIndex(long) const' follow
../../../unxlngi6.pro/slo/SPreparedStatement.o: In function
`connectivity::skeleton::OPreparedStatement::getMetaData()':
SPreparedStatement.cxx:(.text+0xc05): undefined reference to `vtable for
connectivity::skeleton::OResultSetMetaData'
collect2: ld returned 1 exit status
dmake:  Error code 1, while making '../../../
unxlngi6.pro/lib/libDriverSkeletonli.so'

I am building the Skeleton Driver and I dont know how to solve this problem.
Could you please help to solve this problem? Am I doing anything wrong ?

Thanks,
Rohit
On Fri, Mar 11, 2011 at 11:35 AM, Ocke Janssen <[email protected]>wrote:

> Hi Rohit,
>
>
> On 10.03.2011 16:58, Rohit Kulkarni wrote:
>
>> Hi,
>>
>> Thanks for your reply. I really appreciate the help.
>>
>> I could find the skeleton files at the location you have
>> mentioned. Currently we are planning to develop the SDBC driver which
>> will not be an extension. So, we will have to build the skeleton driver
>> first, get it in the list of available drivers and then make it work for
>> LDAP.
>>
>> Could you please elaborate the point where you mentioned to search
>> for macab key on the website?
>> How does the open office dmake understand that it has to build this new
>> driver?
>>
> I guess you place your driver in connectivity. So in that module you find a
> file named prj/build.lst that is read when call the "build" command. But for
> the start you could simply go in your folder and call dmake. Each driver has
> a xcu file which must be "deliver"ed. Which files are needed to copy/deliver
> is defined in prj/d.lst
> So when you have built your driver with dmake you must call deliver.
> After that go to the module scp2 and call "build" and deliver again.
> Then you have to build the module instsetoo_native and voila your OOo ist
> to install.
> Below follows a simple list of todo's:
> 1. Create the driver files (Driver,Connection,Statement,ResultSet,...)
> 2. Create the xcu and xml file, take a look at the other drivers for
> inspiration ;-)
> 3. dmake
> 4. Adjust d.lst to fit your new driver
> 5. deliver
> 6. Search for the word macab or jdbc in the module scp2 and create the same
> for your new driver
> 7. build
> 8. deliver
> 9. go to instsetoo_native and build
> 10. Install your new OOo and enjoy your new driver.
> 11. Debug issues ;-)
>
> - oj
>
>
>
>> Thanks,
>> Rohit
>>
>> On Thu, Mar 10, 2011 at 12:38 PM, Ocke Janssen <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>>    Hi Rohit,
>>
>>    First of all you have to decide if the driver should be an extension
>>    or not. I would first try it as extension because you could look at
>>    the mysql driver.
>>
>>    Not an extension:
>>    The best and easiest way to start I guess is to simply copy the
>>    skeleton files in a folder beside the other database drivers in
>>    connectivity. Further on you should copy e.g. the macab.xml and
>>    macab.xcu file and rename it to your driver in the same directory.
>>    Search with opengrok http://svn.services.openoffice.org/opengrok/
>>    the macab key inside the other projects e.g. scp2 to include the
>>    files into the OOo installation. Build OOo.
>>
>>    As extension:
>>    Here the best way is to look at the mysqlc/source where the mysql
>>    extension is build and copy the files you need to build the oxt. But
>>    please be aware to replace all occurrences of mysql with your name ;-)
>>
>>
>>    Best regards,
>>
>>    Ocke
>>
>>
>>    On 09.03.2011 19:21, Ocke Janssen wrote:
>>
>>        Hi,
>>
>>        The driver can be found here
>>        ooo\odk\examples\DevelopersGuide\Database\DriverSkeleton
>>
>>        - oj
>>
>>        PS: I'll write more tomorrow. ;-)
>>
>>        On 09.03.2011 16:37, Rohit Kulkarni wrote:
>>
>>            Currently I am writing an SDBC driver for LDAP directories. I
>> am
>>            following the guidelines given at
>>
>> http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/Database/SDBC_Driver
>>
>>            This includes writing Driver, connection, statement and
>>            resultset
>>            services.
>>
>>            I want to compile the skeleton driver code and have an entry
>>            in the list
>>            of available drivers. This driver will be a pseudo driver
>>            and will not
>>            have any functionality. This will help in developing the
>>            actual driver.
>>
>>            I am not able to find skeleton driver related source files.
>>            I could
>>            locate a folder named skeleton in
>>            "/OOO320_m19/connectivity/workben/skeleton" but could not
>>            find actual
>>            source files.
>>
>>            Could anyone please give me any pointers regarding
>>
>>            1. Where can I find the source files for the skeleton driver?
>>            2. How to build a skeleton driver?
>>            3. How to make an entry in available drivers list?
>>
>>            Thanks for your time. I really appreciate the help.
>>
>>            Regards,
>>            Rohit
>>
>>
>>        --
>>        -----------------------------------------------------------------
>>        To unsubscribe send email to [email protected]
>>        <mailto:[email protected]>
>>
>>        For additional commands send email to [email protected]
>>        <mailto:[email protected]>
>>
>>        with Subject: help
>>
>>
>>    --
>>    -----------------------------------------------------------------
>>    To unsubscribe send email to [email protected]
>>    <mailto:[email protected]>
>>
>>    For additional commands send email to [email protected]
>>    <mailto:[email protected]>
>>    with Subject: help
>>
>>
>>
> --
> -----------------------------------------------------------------
> To unsubscribe send email to [email protected]
> For additional commands send email to [email protected]
> with Subject: help
>
--
-----------------------------------------------------------------
To unsubscribe send email to [email protected]
For additional commands send email to [email protected]
with Subject: help

--0016e65a08602e864c049e430747
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

As a first step, I copied the folder DriverSkeleton to &quot;../connectivit=
y/drivers/&quot; .I created .xcu and .xml files.To run dmake I must have <a=
 href=3D"http://makefile.mk">makefile.mk</a> in my driver folder. So, I che=
cked a <a href=3D"http://makefile.mk">makefile.mk</a> in calc folder and ma=
de same for DriverSkeleton driver. Also, I copied exports.dxp and .map file=
s from calc to DriverSkeleton.<br>
Finally, my DriverSkeleton folder contains following files--<br><br>[root@l=
ocalhost drivers]# cd DriverSkeleton/<br>[root@localhost DriverSkeleton]# l=
s<br>DriverSkeleton.map=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 Makefile=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 <br>propertyids.hxx=A0=A0=A0=A0=A0=A0 =A0 =A0 =
=A0 =A0 =A0 =A0=A0 SDriver.cxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 <br>
SResultSet.hxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 SSt=
atement.hxx<br>DriverSkeleton.xcu=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 <a href=3D"http://makefile.mk">makefile.mk</a>=A0=A0=A0=A0=A0=A0=A0 <br>SC=
onnection.cxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 SDriver.hx=
x=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 <br>SResultSetMetaData.cxx=A0=A0=A0=
=A0=A0 DriverSkeleton.xml<br>
OSubComponent.hxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 SConnection.hxx<br>SPrep=
aredStatement.cxx=A0=A0=A0=A0=A0 SResultSetMetaData.hxx<br>exports.dxp=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 OT=
ypeInfo.hxx<br>SDatabaseMetaData.cxx=A0=A0=A0=A0=A0=A0 SPreparedStatement.h=
xx<br>SServices.cxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0 How_to_write_my_own_driver.txt<br>
propertyids.cxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 SDatabaseMetaData.hxx<br>SResultSet.cxx=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 SStatement.cxx<br><br>After running dmake in th=
e same folder it give me the following output--<br><br>../../../<a href=3D"=
http://unxlngi6.pro/slo/SResultSet.o">unxlngi6.pro/slo/SResultSet.o</a>: In=
 function `connectivity::skeleton::OResultSet::createArrayHelper() const&#3=
9;:<br>
SResultSet.cxx:(.text+0x439): undefined reference to `connectivity::skeleto=
n::OPropertyMap::getNameByIndex(long) const&#39;<br>SResultSet.cxx:(.text+0=
x49d): undefined reference to `connectivity::skeleton::OPropertyMap::getNam=
eByIndex(long) const&#39;<br>
SResultSet.cxx:(.text+0x501): undefined reference to `connectivity::skeleto=
n::OPropertyMap::getNameByIndex(long) const&#39;<br>SResultSet.cxx:(.text+0=
x55f): undefined reference to `connectivity::skeleton::OPropertyMap::getNam=
eByIndex(long) const&#39;<br>
SResultSet.cxx:(.text+0x5c3): undefined reference to `connectivity::skeleto=
n::OPropertyMap::getNameByIndex(long) const&#39;<br>../../../<a href=3D"htt=
p://unxlngi6.pro/slo/SResultSet.o:SResultSet.cxx:(.text+0x627)">unxlngi6.pr=
o/slo/SResultSet.o:SResultSet.cxx:(.text+0x627)</a>: more undefined referen=
ces to `connectivity::skeleton::OPropertyMap::getNameByIndex(long) const&#3=
9; follow<br>
../../../<a href=3D"http://unxlngi6.pro/slo/SResultSet.o">unxlngi6.pro/slo/=
SResultSet.o</a>: In function `connectivity::skeleton::OResultSet::getMetaD=
ata()&#39;:<br>SResultSet.cxx:(.text+0x1f9f): undefined reference to `vtabl=
e for connectivity::skeleton::OResultSetMetaData&#39;<br>
../../../<a href=3D"http://unxlngi6.pro/slo/SResultSet.o">unxlngi6.pro/slo/=
SResultSet.o</a>: In function `connectivity::skeleton::OPropertyMap::getPro=
pMap()&#39;:<br>SResultSet.cxx:(.text._ZN12connectivity8skeleton12OProperty=
Map10getPropMapEv[connectivity::skeleton::OPropertyMap::getPropMap()]+0x9b)=
: undefined reference to `connectivity::skeleton::OPropertyMap::~OPropertyM=
ap()&#39;<br>
../../../<a href=3D"http://unxlngi6.pro/slo/SStatement.o">unxlngi6.pro/slo/=
SStatement.o</a>: In function `connectivity::skeleton::OStatement_Base::cre=
ateArrayHelper() const&#39;:<br>SStatement.cxx:(.text+0x58d): undefined ref=
erence to `connectivity::skeleton::OPropertyMap::getNameByIndex(long) const=
&#39;<br>
SStatement.cxx:(.text+0x5f1): undefined reference to `connectivity::skeleto=
n::OPropertyMap::getNameByIndex(long) const&#39;<br>SStatement.cxx:(.text+0=
x658): undefined reference to `connectivity::skeleton::OPropertyMap::getNam=
eByIndex(long) const&#39;<br>
SStatement.cxx:(.text+0x6bf): undefined reference to `connectivity::skeleto=
n::OPropertyMap::getNameByIndex(long) const&#39;<br>SStatement.cxx:(.text+0=
x726): undefined reference to `connectivity::skeleton::OPropertyMap::getNam=
eByIndex(long) const&#39;<br>
../../../<a href=3D"http://unxlngi6.pro/slo/SStatement.o:SStatement.cxx:(.t=
ext+0x78d)">unxlngi6.pro/slo/SStatement.o:SStatement.cxx:(.text+0x78d)</a>:=
 more undefined references to `connectivity::skeleton::OPropertyMap::getNam=
eByIndex(long) const&#39; follow<br>
../../../<a href=3D"http://unxlngi6.pro/slo/SPreparedStatement.o">unxlngi6.=
pro/slo/SPreparedStatement.o</a>: In function `connectivity::skeleton::OPre=
paredStatement::getMetaData()&#39;:<br>SPreparedStatement.cxx:(.text+0xc05)=
: undefined reference to `vtable for connectivity::skeleton::OResultSetMeta=
Data&#39;<br>
collect2: ld returned 1 exit status<br>dmake:=A0 Error code 1, while making=
 &#39;../../../<a href=3D"http://unxlngi6.pro/lib/libDriverSkeletonli.so">u=
nxlngi6.pro/lib/libDriverSkeletonli.so</a>&#39;<br><br> I am building the S=
keleton Driver and I dont know how to solve this problem.<br>
Could you please help to solve this problem? Am I doing anything wrong ?<br=
><br>Thanks,<br>Rohit<br><div class=3D"gmail_quote">On Fri, Mar 11, 2011 at=
 11:35 AM, Ocke Janssen <span dir=3D"ltr">&lt;<a href=3D"mailto:Ocke.Jansse=
[email protected]">[email protected]</a>&gt;</span> wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin: 0pt 0pt 0pt 0.8ex; borde=
r-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Hi Rohit,<div cla=
ss=3D"im"><br>
<br>
On 10.03.2011 16:58, Rohit Kulkarni wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin: 0pt 0pt 0pt 0.8ex; borde=
r-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi,<br>
<br>
Thanks for your reply. I really appreciate the help.<br>
<br>
I could find the skeleton files at the location you have<br>
mentioned. Currently we are planning to develop the SDBC driver which<br>
will not be an extension. So, we will have to build the skeleton driver<br>
first, get it in the list of available drivers and then make it work for<br>
LDAP.<br>
<br>
Could you please elaborate the point where you mentioned to search<br>
for macab key on the website?<br>
How does the open office dmake understand that it has to build this new<br>
driver?<br>
</blockquote></div>
I guess you place your driver in connectivity. So in that module you find a=
 file named prj/build.lst that is read when call the &quot;build&quot; comm=
and. But for the start you could simply go in your folder and call dmake. E=
ach driver has a xcu file which must be &quot;deliver&quot;ed. Which files =
are needed to copy/deliver is defined in prj/d.lst<br>

So when you have built your driver with dmake you must call deliver.<br>
After that go to the module scp2 and call &quot;build&quot; and deliver aga=
in.<br>
Then you have to build the module instsetoo_native and voila your OOo ist t=
o install.<br>
Below follows a simple list of todo&#39;s:<br>
1. Create the driver files (Driver,Connection,Statement,ResultSet,...)<br>
2. Create the xcu and xml file, take a look at the other drivers for inspir=
ation ;-)<br>
3. dmake<br>
4. Adjust d.lst to fit your new driver<br>
5. deliver<br>
6. Search for the word macab or jdbc in the module scp2 and create the same=
 for your new driver<br>
7. build<br>
8. deliver<br>
9. go to instsetoo_native and build<br>
10. Install your new OOo and enjoy your new driver.<br>
11. Debug issues ;-)<br>
<br>
- oj<br>
<br>
<br>
<blockquote class=3D"gmail_quote" style=3D"margin: 0pt 0pt 0pt 0.8ex; borde=
r-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class=3D"im">
<br>
Thanks,<br>
Rohit<br>
<br>
On Thu, Mar 10, 2011 at 12:38 PM, Ocke Janssen &lt;<a href=3D"mailto:Ocke.J=
[email protected]" target=3D"_blank">[email protected]</a><br></div><=
div><div></div><div class=3D"h5">
&lt;mailto:<a href=3D"mailto:[email protected]" target=3D"_blank">Ock=
[email protected]</a>&gt;&gt; wrote:<br>
<br>
 =A0 =A0Hi Rohit,<br>
<br>
 =A0 =A0First of all you have to decide if the driver should be an extensio=
n<br>
 =A0 =A0or not. I would first try it as extension because you could look at=
<br>
 =A0 =A0the mysql driver.<br>
<br>
 =A0 =A0Not an extension:<br>
 =A0 =A0The best and easiest way to start I guess is to simply copy the<br>
 =A0 =A0skeleton files in a folder beside the other database drivers in<br>
 =A0 =A0connectivity. Further on you should copy e.g. the macab.xml and<br>
 =A0 =A0macab.xcu file and rename it to your driver in the same directory.<=
br>
 =A0 =A0Search with opengrok <a href=3D"http://svn.services.openoffice.org/=
opengrok/" target=3D"_blank">http://svn.services.openoffice.org/opengrok/</=
a><br>
 =A0 =A0the macab key inside the other projects e.g. scp2 to include the<br>
 =A0 =A0files into the OOo installation. Build OOo.<br>
<br>
 =A0 =A0As extension:<br>
 =A0 =A0Here the best way is to look at the mysqlc/source where the mysql<b=
r>
 =A0 =A0extension is build and copy the files you need to build the oxt. Bu=
t<br>
 =A0 =A0please be aware to replace all occurrences of mysql with your name =
;-)<br>
<br>
<br>
 =A0 =A0Best regards,<br>
<br>
 =A0 =A0Ocke<br>
<br>
<br>
 =A0 =A0On 09.03.2011 19:21, Ocke Janssen wrote:<br>
<br>
 =A0 =A0 =A0 =A0Hi,<br>
<br>
 =A0 =A0 =A0 =A0The driver can be found here<br>
 =A0 =A0 =A0 =A0ooo\odk\examples\DevelopersGuide\Database\DriverSkeleton<br>
<br>
 =A0 =A0 =A0 =A0- oj<br>
<br>
 =A0 =A0 =A0 =A0PS: I&#39;ll write more tomorrow. ;-)<br>
<br>
 =A0 =A0 =A0 =A0On 09.03.2011 16:37, Rohit Kulkarni wrote:<br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0Currently I am writing an SDBC driver for LDAP dire=
ctories. I am<br>
 =A0 =A0 =A0 =A0 =A0 =A0following the guidelines given at<br>
 =A0 =A0 =A0 =A0 =A0 =A0<a href=3D"http://wiki.services.openoffice.org/wiki=
/Documentation/DevGuide/Database/SDBC_Driver" target=3D"_blank">http://wiki=
.services.openoffice.org/wiki/Documentation/DevGuide/Database/SDBC_Driver</=
a><br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0This includes writing Driver, connection, statement=
 and<br>
 =A0 =A0 =A0 =A0 =A0 =A0resultset<br>
 =A0 =A0 =A0 =A0 =A0 =A0services.<br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0I want to compile the skeleton driver code and have=
 an entry<br>
 =A0 =A0 =A0 =A0 =A0 =A0in the list<br>
 =A0 =A0 =A0 =A0 =A0 =A0of available drivers. This driver will be a pseudo =
driver<br>
 =A0 =A0 =A0 =A0 =A0 =A0and will not<br>
 =A0 =A0 =A0 =A0 =A0 =A0have any functionality. This will help in developin=
g the<br>
 =A0 =A0 =A0 =A0 =A0 =A0actual driver.<br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0I am not able to find skeleton driver related sourc=
e files.<br>
 =A0 =A0 =A0 =A0 =A0 =A0I could<br>
 =A0 =A0 =A0 =A0 =A0 =A0locate a folder named skeleton in<br>
 =A0 =A0 =A0 =A0 =A0 =A0&quot;/OOO320_m19/connectivity/workben/skeleton&quo=
t; but could not<br>
 =A0 =A0 =A0 =A0 =A0 =A0find actual<br>
 =A0 =A0 =A0 =A0 =A0 =A0source files.<br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0Could anyone please give me any pointers regarding<=
br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A01. Where can I find the source files for the skelet=
on driver?<br>
 =A0 =A0 =A0 =A0 =A0 =A02. How to build a skeleton driver?<br>
 =A0 =A0 =A0 =A0 =A0 =A03. How to make an entry in available drivers list?<=
br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0Thanks for your time. I really appreciate the help.=
<br>
<br>
 =A0 =A0 =A0 =A0 =A0 =A0Regards,<br>
 =A0 =A0 =A0 =A0 =A0 =A0Rohit<br>
<br>
<br>
 =A0 =A0 =A0 =A0--<br>
 =A0 =A0 =A0 =A0-----------------------------------------------------------=
------<br>
 =A0 =A0 =A0 =A0To unsubscribe send email to <a href=3D"mailto:dev-unsubscr=
[email protected]" target=3D"_blank">[email protected]=
g</a><br></div></div>
 =A0 =A0 =A0 =A0&lt;mailto:<a href=3D"mailto:[email protected]=
.org" target=3D"_blank">[email protected]</a>&gt;<div clas=
s=3D"im"><br>
 =A0 =A0 =A0 =A0For additional commands send email to <a href=3D"mailto:sym=
[email protected]" target=3D"_blank">[email protected]</a><br></=
div>
 =A0 =A0 =A0 =A0&lt;mailto:<a href=3D"mailto:[email protected]" targ=
et=3D"_blank">[email protected]</a>&gt;<div class=3D"im"><br>
 =A0 =A0 =A0 =A0with Subject: help<br>
<br>
<br>
 =A0 =A0--<br>
 =A0 =A0-----------------------------------------------------------------<b=
r>
 =A0 =A0To unsubscribe send email to <a href=3D"mailto:dev-unsubscribe@dba.=
openoffice.org" target=3D"_blank">[email protected]</a><br=
></div>
 =A0 =A0&lt;mailto:<a href=3D"mailto:[email protected]" ta=
rget=3D"_blank">[email protected]</a>&gt;<div class=3D"im"=
><br>
 =A0 =A0For additional commands send email to <a href=3D"mailto:[email protected]=
penoffice.org" target=3D"_blank">[email protected]</a><br></div>
 =A0 =A0&lt;mailto:<a href=3D"mailto:[email protected]" target=3D"_b=
lank">[email protected]</a>&gt;<br>
 =A0 =A0with Subject: help<br>
<br>
<br>
</blockquote><div><div></div><div class=3D"h5">
<br>
--<br>
-----------------------------------------------------------------<br>
To unsubscribe send email to <a href=3D"mailto:[email protected]=
ce.org" target=3D"_blank">[email protected]</a><br>
For additional commands send email to <a href=3D"mailto:[email protected]=
e.org" target=3D"_blank">[email protected]</a><br>
with Subject: help<br>
</div></div></blockquote></div><br>

--0016e65a08602e864c049e430747--