Sponsored Content
Top Forums Programming How to prevent a C++ program reading a file that is still being written to.? Post 302907130 by chris01010 on Thursday 26th of June 2014 05:05:25 AM
Old 06-26-2014
How to prevent a C++ program reading a file that is still being written to.?

Hi,

Hopefully someone can help.

We have a process that writes a file using Connect Direct to our local Solaris server and then our C++ program will pick up the file and process it. Unfortunately, because of the size of the file, the C++ program is processing the file before it has finished being written. Which causes digital signature verification to fail.

Does anyone know of a way of ensuring that the process cannot pick up/ access the file before the write is complete? I'm fairly certain that Unix doesn't have any default locking of files.

It is worth noting we do not have GNU on the solaris server.

I have various inelegant solutions (such as listing the directory and checking if the filesize is still changing), but I was wondering if there was a better way.


Thanks in advance

Chris
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

File being used/written

Hello, Which command in unix can tell whether a file is being used/written by another process. e.g. If one process is copying a very big file in some directory and there is another cronjob process which checks for a new file and in this directory and process the file. I want to check, if the... (4 Replies)
Discussion started by: sanjay92
4 Replies

2. UNIX for Dummies Questions & Answers

reading filenames inside a program

UNIX Sun Ultra60 5.5.1 Hello everybody, I have a problem that seems simple but turns out to be complex (for me at least). My program needs to open a directory (this part is easy), scan each filename and determine whether or not a file with the suffix (.07) exists. So the program would return... (5 Replies)
Discussion started by: j_t_kim
5 Replies

3. Programming

How to clear the content of a pipe (STDIN) after it is written to another program?

PROGRAM A <-> PROGRAM B PROGRAM A sends data as STDIN ro PROGRAM B and when PROGRAM B is executed from PROGRAM A, it sends output back to PROGRAM A. This is implemented using 2 pipes (fd1 & fd2). The above process happens in a loop and during the second run, the previous data that had been... (10 Replies)
Discussion started by: vvaidyan
10 Replies

4. Shell Programming and Scripting

How to prevent the pattern "^[[0m" from being written to a file ????

Hi folks, I am using a shell script to display the referred libraries names of any specified cpp code. Given below is the script: shell script "grblib" ------------------------------------------------------------------------- #!/bin/sh # get the lines having "include" pattern ... (5 Replies)
Discussion started by: frozensmilz
5 Replies

5. Shell Programming and Scripting

prevent errors/warnings from being written to log file

i have this script which works fine but shows errors when it runs..these are more like warnings and the script runs fine.. i am on a sun machine.. i know it writes all the error messages to a master log file.. is there any way i can turn off these warnings/error messages and prevent them from being... (2 Replies)
Discussion started by: npatwardhan
2 Replies

6. Linux

Reading ELF file Symbol table of C++ program

Folks, I have some program(Test.cpp) as follows, #include<iostream> class Abc { private: int _theVar; public : int printVar(); }; int Abc :: printVar() { _theVar=10; } main() { Abc _t; (0 Replies)
Discussion started by: vinod_chitrali
0 Replies

7. Programming

Reading ELF file Symbol table of C++ program

Folks, I have some program(Test.cpp) as follows, #include<iostream> class Abc { private: int _theVar; public : int printVar(); }; int Abc :: printVar() { _theVar=10; } main() { Abc _t; (2 Replies)
Discussion started by: vinod_chitrali
2 Replies

8. Shell Programming and Scripting

Reading from a file a background program writes to

Hi! #!/usr/bin/env bash rm tmpcomm nc -v -u -l 444 | hexdump -b > tmpcomm while : do read l1 < tmpcomm read l2 < tmpcomm read l3 < tmpcomm read l4 < tmpcomm # do something doneI start netcat in the background and listen for an incoming conncetion. All incoming... (1 Reply)
Discussion started by: torax123
1 Replies

9. Programming

Reading long options in C++ program

I am reading arguments passed to a C++ program which accepts long options. Long options start with '--', with the value joined with the option by an = sign, with no intervening spaces. An example is as follows: programName --vdz=15.0 I want to store 'vdz' in variable 'key', whereas... (4 Replies)
Discussion started by: kristinu
4 Replies

10. Programming

Debugging a program written in two languages

Subject: Debugging a program written in two languages Platform: Linux (Kubuntu) I am trying to debug a C application with bindings to some simple functions written in Ada using the GNAT Programming Studio IDE (GPS). The main entry point is in C. The debugger is gdb. I managed to compile... (0 Replies)
Discussion started by: NiGHTS
0 Replies
YPSET(8)						    BSD System Manager's Manual 						  YPSET(8)

NAME
ypset -- tell ypbind(8) which NIS server process to use SYNOPSIS
ypset [-h host] [-d domain] server DESCRIPTION
ypset tells the ypbind(8) process on the current machine which NIS server process to communicate with. If server is down or is not running a NIS server process, it is not discovered until a NIS client process attempts to access a NIS map, at which time ypbind(8) tests the binding and takes appropriate action. ypset is most useful for binding a NIS client that is not on the same broadcast network as the closest NIS server, but can also be used for debugging a local network's NIS configuration, testing specific NIS client programs, or binding to a specific server when there are many servers on the local network supplying NIS maps. The options are as follows: -h host Set the NIS binding on host instead of the local machine. -d domain Use the NIS domain domain instead of the default domain as returned by domainname(1). SEE ALSO
domainname(1), ypcat(1), ypmatch(1), ypwhich(1), nis(8), ypbind(8), yppoll(8) AUTHORS
Theo de Raadt BSD
February 26, 2005 BSD
All times are GMT -4. The time now is 04:47 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy