Quantcast
Channel: Rebex Q&A Forum - Recent questions and answers
Viewing all 3889 articles
Browse latest View live

Answered: FTP / SSL Timeout Exceeded for every actions after Connected

$
0
0

Hello,

the mentioned answer was for SMTP protocol only. FTP protocol has other specialties, which can be utilized.

Can you please send us communication log to support@rebex.net, it can expose the source of the problem (session settings, etc.)
The log can be created like this:

var client = new Rebex.Net.Ftp();
client.LogWriter = new Rebex.FileLogWriter(@"c:\data\ftp.log", Rebex.LogLevel.Debug);

Answered: Supported encryption algorithms in Secure Mail components

$
0
0

Rebex Secure Mail supports AES-128/AES-192 in CBC mode, but does not support RSASSA-PSS or RSAES-OAEP, mostly due to lack of demand.

Rebex SFTP transport layer is SSH protocol, and our implementation does support AES-128/AES-192 in CBC mode. However, RFC 3565 nd 4056 are not relevant for SSH - they extend Cryptographic Message Syntax (CMS), which is the core of S/MIME, but not of SSH. RSAES-OAEP in SSH is not supported either - RFC 4432 defines the appropriate key exchange cipher based on this, but it's seldom used (unlike classic or elliptic curve Diffie-Hellman is ubiquitous) and not supported by Rebex SSH at the moment. Sorry!

Answered: RebexSFTP - can we control ciphers

How to decrease thread priority of SFTP server

$
0
0

Hi, we have a Rebex SFTP server running on a low end PDA device under Windows CE 6.0.
The problem is that while there is file transfer going on, the SFTP server seems to take 100% CPU and the GUI isn't responding any more.
I'm aware that enciphering/deciphering takes some effort.
So, is it possible to lower the thread priority of the SFTP server so the rest of the system gets responsive again? I think it's not an option to increase all other threads' priorities because as far as I know the Windows GUI's priority cannot be changed.

Thanks!

Answered: Telnet Response - Event to Detect VT100 Escape Sequence [0q (Android)

$
0
0

Hello,

the event you are looking for is ITerminal.DataReceived. Using it, you will be notified about all data received from the remote end. To perform action on specific escape sequence, you have to put small logic in it. It can look like this:

// define sequence to observe
string ESC_SEQ = '\x1B' + "[0q";
// helper field to store received data
string rawData = string.Empty;

// register event for data processing
script.Terminal.DataReceived += (s, e) =>
{
    // append received data
    rawData += e.RawData;

    while (true)
    {
        // quit when not enough data
        if (rawData.Length < ESC_SEQ.Length)
            return;

        // check presence of observed sequence
        int idx = rawData.IndexOf(ESC_SEQ);
        if (idx < 0)
        {
            // remember only necessary characters
            rawData = rawData.Substring(rawData.Length - ESC_SEQ.Length - 1);
            return;
        }

        // remove data preceding observed sequence and the sequence
        rawData = rawData.Substring(idx + ESC_SEQ.Length);

        // do something - observed sequence just received
        Console.WriteLine("RECEIVED: {0}", ESC_SEQ.Replace("\x1B", "<ESC>"));
    }
};

Now, to your second issue. I am not sure whether I understand the problem well. Can you please post here, or send us (to support@rebex.net) your code, so I can imagine better what you are trying to do?

Please write comment on line (or lines) which causes troubles and what you are expecting to happen.

Thank you.

POP3 with outlook.office365.com gives timeout exception but works with IMAP

$
0
0

We are using Rebex 2016 R3 POP3- 2.0.6198.0 version.
We are facing issue with POP3 whereas IMAP is able to connect to office365.

For pop3 facing a following exception:

A connection attempt failed because the connected party did not
properly respond after a period of time, or established connection
failed because connected host has failed to respond.

Our dummy code is: this is not production but just a simple test connection code.

var client = new Pop3();
client.Settings.SslAllowedVersions = TlsVersion.Any;
client.ValidatingCertificate += new EventHandler<SslCertificateValidationEventArgs>(ValidateCertificate);
client.Settings.SslAcceptAllCertificates = true;
client.Connect("outlook.office365.com", SslMode.Explicit);
client.Login("abcd@efg.onmicrosoft.com", "temp@123");

Do we missing anything for pop3?

Does Installing Rebex SFTP .NET Library on Windows Server 2012 also register them to the GAC?

$
0
0

We own the SFTP .NET Library and want to deploy an SSIS Package to our SQL Server Integration Services instance and create a job that uses the C# Script Task. If we install the licensed, downloaded client library on the server, does that handle registration of the assemblies in the GAC on the Server. The server doesn't have Visual Studio installed.

Thanks
Andrew

Answered: SignatureHash and MailEncryptionAlgorithms

$
0
0

The recipients S/MIME implementation would have to support 256-bit AES encryption and RSA with SHA-512 hash algorithm, otherwise they would be unable to decrypt the e-mail or verify its signature.

This means that they have to support Section 2.1 of RFC 3565 (AES in CMS) and Sections 2.4 and 3.2 of RFC 5754 (SHA-2 in CMS).

Most contemporary implementations support this.


Answered: TlsException

$
0
0

This indicates a failure to validate the server's certificate (which implies the connection was actually successful).

Unfortunately, this particular issue indicates "other error", and we need to gather additional information to be able to tell what is going on.

But first, could you please lete us know which version of Rebex Secure Mail you use? We have enhanced reporting of these errors a bit recently.

TransferProgressChanged event is always triggered twice when progress percentage is 100

$
0
0

TransferProgressChanged event is always triggered twice when progress percentage is 100, Do you know why it behaves of this way?

thanks in advance.

Answered: Rebex SMTPException Response code list

$
0
0

Hello,

please note that all response codes are reported by the SMTP server, not the client.

The reported Response Code: 535 is specific to Yahoo, other server can have other error code for the same.

We don't have a document describing error codes, because it is server specific and we implement the client part.

I suggest you to handle exception, notify user that "Login failed." Then provide more detailed info which can contain exception message or server response and finally provide some hints (e.g. check your credentials, enable Less secure app, etc.)

Modify recipient list

$
0
0

Hello,

I'm pretty far long the way of getting my solution working however I'm a struggling a little bit with how to modify the recipients. Basically what I'm doing is loading a message from IMAP, then review each recipient and remove some that aren't intended. I can't seem to find any examples of how to create a list of recipients or how to review the current list. Any help would be appreciated.

Thansk
Nick

Progress percentage of a file in FileServer component?.

$
0
0

I'm using Sftp and FileServer components, and I was wondering if there is a way to let the FileServer know about the progress percentage of a file.

thanks in advance.

Answered: Modify recipient list

$
0
0

Hello, there are several ways to retrieve the list of recipients. For example:

a) Retrieve message info (ImapMessageInfo object) using GetMessageInfo method. Use ImapMessageInfo properties such as To or CC to get a list of recipients.

b) Download the message into MailMessage object using GetMailMessage method. Use MailMessage properties such as To or CC to get a list of recipients.

In both cases, the To and CC properties return an instance of MailAddressCollection that can easily be iterated.

The properties of MailMessage can be modified, but please be aware that this won't change the message at the IMAP server.

Unfortunately, the IMAP protocol doesn't make it possible to modify a message at the server, so if you would like to achieve something like that, you have to download the message, modify it, upload it again (it will get a different ID) and delete the original one.

Using Rebex.sftp, how to connect to a server shared folder with specific credentials, grab a file and sftp it out

$
0
0

Hello,

using an SSIS script task with Rebex.Net.Sftp I need to follow the steps described below:

1- Connect to a shared folder with specific credentials to access a file (pending)
2- Sftp the file out with Rebex.Net.Sftp (accomplished)

How can I stablish a connection passing specific credentials to access a shared folder on an external server to access the file that I need to transport to the ftp folder?

I am assuming that
client.Upload(@"\\Shared_folder_path\File.txt","ftp_folder")
will not work because in order to connect to \\Shared_folder_path I have to pass specific credentials.

Is there a way I can pass the credentials to access \\Shared_folder_path\File.txt before I call client.Upload?


Compressed files with 7-zip 9.20 64-Bit on Ubuntu 16.04 TLS can not extracted

$
0
0

Hi Rebex-Team,

i have here a ZIP-Archive from a external team, that i must extract automatically to using in another program.

The archive was created with 7-zip 9.20 64-Bit on Ubuntu 16.04 TLS. The command was:

7z a "test_ubuntu.zip""/tmp/test"

It seems that 7-zip does not store the File-Attribute in the Archive to the file (ZipItem.IsFile or ZipItem.ItemType = ArchiveItemType.File).

Extracting of the files with any Zip-Programs (WinRAR, WinZip, 7-zip) is possible without problems.

Is it possible in any way to extract the files? Follwing i have tried:

  • ZipItem.ExtractToFile("C:\test\"& ZipItem.Name, Rebex.IO.ActionOnExistingFiles.OverwriteAll)

  • ZipItem.ExtractToDirectory("C:\", Rebex.IO.TraversalMode.NonRecursive, Rebex.IO.ActionOnExistingFiles.OverwriteAll)

  • Extracting the whole Archive with ZipArchive.ExtractAll("C:\test", Rebex.IO.TransferMethod.Copy, Rebex.IO.ActionOnExistingFiles.OverwriteAll)

  • I have nothing found in the options under ZipArchive.Options, especially .UnsupportedFeatureExtractMode

  • Tried several Events of the ZipArchive-Class

Nothing works. Is there any way to force the extraction of the files (for example overwriting the ZipItem.ItemType-Property or additional Options ZipArchive.Options.UnsupportedFeatureExtractMode)?

I have uploaded a sample ZIP-File here.

I have another Library (DevExpress) here, that can handle those Archives. But this Library have no equal PasswordRequired-Event.
In addition, i would realize this only with the Rebex-Librarys, because the Zip-Arichives send via Mail.

Thanks + Regards
Bernhard

Answered: Rebex.Sftp: The server has closed the connection

$
0
0

For some reason, the server decided to close the connection. However, from exception only we cannot find the cause.

Can you please create communication log in Debug level as shown bellow and send it to support@rebex.net for analysis?

Sftp client = new Sftp();
client.Connect(...);
client.Login(...);
client.LogWriter = new Rebex.FileLogWriter("sftp.log", Rebex.LogLevel.Debug);

Answered: Rebex HTTPS - support for WCF proxies using HttpChannelFactory

$
0
0

Hello,

you are right. The problem is caused by impossibility to cast Rebex class HttpRequest into system class HttpWebRequest.

Unfortunately, the HttpWebRequest class on .NET CF has no public or protected constructor, so we cannot derive from it. We can derive only from WebRequest class.

Also the HttpChannelFactory class is written in a way it can use HttpWebRequest class only.

We are not familiar with WCF, but I used to create some Web References. There you get a partial class XyzService, which inherits from System.Web.Services.Protocols.SoapHttpClientProtocol. Using partial keyword, you can simply reimplement some functionality which remains unchanged even when you recreate the web reference.

Try to look at some way to reimplement CFClientBase1.Invoke or CFClientBase1.getReply or RequestChannel.Request or inject your implementation of HttpChannelFactory which doesn't require HttpWebRequest class only or something similar.

For example in my VB.NET project I do similar this way:

Partial Public Class MyService

    Protected Overrides Function GetWriterForMessage(message As SoapClientMessage, bufferSize As Integer) As XmlWriter
        ' inject code for signing the request here
        Return New SigningXmlTextWriter(MyBase.GetWriterForMessage(message, bufferSize))
    End Function

End Class

I implemented SigningXmlTextWriter class to sign the SOAP request message with an X509 certificate.

If you send us your project at support@rebex.net (so we can reproduce the issue) we will look at it and hopefully find a solution to solve this issue.

Used Rebex trial to support TLS 1.2 in windows CE and failed.

$
0
0

Hi,
I downloaded RebexHttps-2017R2-Trial.exe to support TLS 1.2 in .net CF 3.5.
I did the adjustment but cannot log into https sites. My code is given bellow.

This was an existing code and i modified it to support TLS 1.2 based on the instructions given in Rebex site. But i feel i have missed something.

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using Rebex.Net;
using Rebex.Security;

namespace myTest.WebService
{
public partial class DATACAPTUREMANAGEMENT : System.Web.Services.Protocols.SoapHttpClientProtocol
{
protected override System.Net.WebRequest GetWebRequest(Uri uri)
{
HttpRequestCreator creator;

        creator = new Rebex.Net.HttpRequestCreator();
        creator.Register();
        //creator.Settings.SslAllowedVersions = TlsVersion.TLS12 | TlsVersion.TLS11 | TlsVersion.TLS10;
        System.Net.WebRequest request = base.GetWebRequest(uri); 
        switch (uri.Scheme)
        {
            case "http":
                request = creator.Create(uri);
                break;
            case "https":
                // use Rebex HttpRequest to handle HTTP and HTTPS requests
                request = creator.Create(uri);
                break;
            default:
                // use default functionality to handle other requests
                request = base.GetWebRequest(uri);
                break;
        }

        if (PreAuthenticate)
        {
            System.Net.NetworkCredential networkCredentials = Credentials.GetCredential(uri, "Basic");
            request.Credentials = Credentials.GetCredential(uri, "Basic");
            if (networkCredentials != null)
            {
                byte[] credentialBuffer = new System.Text.UTF8Encoding().GetBytes(
                networkCredentials.UserName + ":" + networkCredentials.Password);
                request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(credentialBuffer));
            }
            else
            {
                throw new ApplicationException("No network credentials");
            }
        }
        if (myTest.Helpers.Configuration.CurrentCultureName != null)
        {
            request.Headers.Add("ACCEPT-LANGUAGE", myTest.Helpers.Configuration.CurrentCultureName);
        }  
        return request;
    }
}

}

SFTP Connect to multiple servers

$
0
0

My rebex SFTP client needs to send a file to multiple SFTP servers simultaneously. Should I loop to do it (or) any better way of doing it?

Viewing all 3889 articles
Browse latest View live