storj.io/minio@v0.0.0-20230509071714-0cbc90f649b1/cmd/http/dial_others.go (about) 1 //go:build !linux 2 // +build !linux 3 4 /* 5 * MinIO Cloud Storage, (C) 2020 MinIO, Inc. 6 * 7 * Licensed under the Apache License, Version 2.0 (the "License"); 8 * you may not use this file except in compliance with the License. 9 * You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, software 14 * distributed under the License is distributed on an "AS IS" BASIS, 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 * See the License for the specific language governing permissions and 17 * limitations under the License. 18 */ 19 20 package http 21 22 import ( 23 "context" 24 "net" 25 "syscall" 26 "time" 27 ) 28 29 // TODO: if possible implement for non-linux platforms, not a priority at the moment 30 //nolint:deadcode 31 func setInternalTCPParameters(c syscall.RawConn) error { 32 return nil 33 } 34 35 // DialContext is a function to make custom Dial for internode communications 36 type DialContext func(ctx context.Context, network, address string) (net.Conn, error) 37 38 // NewInternodeDialContext setups a custom dialer for internode communication 39 var NewInternodeDialContext = NewCustomDialContext 40 41 // NewCustomDialContext configures a custom dialer for internode communications 42 func NewCustomDialContext(dialTimeout time.Duration) DialContext { 43 return func(ctx context.Context, network, addr string) (net.Conn, error) { 44 dialer := &net.Dialer{ 45 Timeout: dialTimeout, 46 } 47 return dialer.DialContext(ctx, network, addr) 48 } 49 }