I have written a function to execute a command on a remote machine.

```
Command : iptunnel add obs mode gre remote x.x.x.x local X.X.X.X ttl 225 $okey $ikey

```

`$okey $ikey` values are passed as arguments. 

Now ,Sometimes I want to execute the command WITHOUT $okey and $ikey values.

```
Command : iptunnel add obs mode gre remote x.x.x.x local X.X.X.X ttl 225

```

Now my question is ,How do i pass the $okey and $ikey values as optional arguments. If $okey and $ ikey values are NOT passed then the below command must be executed.

```
iptunnel add obs mode gre remote x.x.x.x local X.X.X.X ttl 225

```

If $okey and $ ikey values are passed then the following command must be executed.

```
iptunnel add obs mode gre remote x.x.x.x local X.X.X.X ttl 225 $okey $ikey

```

Function :

```
 sub gre_testing {
        my ($self,$okey,$ikey)  = @_;
        $self->execute('iptunnel add obs mode gre remote x.x.x.x local X.X.X.X ttl 225 $okey $ikey'); 
        return 1;
 } 

```

Function call :

```
gre_testing(1000,1000);

```